IntentSharp

Buying an IntentSharp commercial license

IntentSharp is source-available under the IntentSharp Source-Available Commercial License 1.0 (see LICENSE). You may evaluate it free for 30 days. Any use by or for a business after that, and any production use at any time, needs a paid license. Personal and educational use stay free.

Licensor: C2Consultants LLC. Contact: licensing@c2consultants.net.

1. Do I need a license?

You need a commercial license if any of these is true:

  1. You run IntentSharp, or software that depends on it, anywhere that serves anyone other than the developer evaluating it: production, staging, pilots, internal tools, customer environments.
  2. Output from IntentSharp (generated text, data, SQL or code) is used in or for the operation of a business, or relied on for a decision, record or deliverable.
  3. You are a business, or you work for one, and your 30-day evaluation has ended. Development and testing count.
  4. You use it in, or in support of, a product or service that is sold or provided for a fee, including SaaS.
  5. You redistribute it, in source or compiled form, to anyone else, including bundled in your own product.

You do not need a license for the 30-day evaluation, for personal use on your own devices that is not for a business, or for coursework and non-commercial academic research at a school or university.

2. Editions and prices

All editions are annual subscriptions in US dollars, billed yearly in advance. Prices are for new and renewing licenses and may change for future terms; the price you pay is fixed for the term you have paid.

Edition Who it covers Price per year Support
Developer 1 named developer, any number of applications, one organization $349 Email, 2 business days
Team Up to 10 named developers in one organization $1,490 Email, 2 business days
Business 11 to 50 named developers in one organization $4,900 Email, 2 business days
Enterprise Unlimited developers in one legal entity and its controlled affiliates $12,000 Priority email, 1 business day, plus a named contact
OEM / redistribution The right to ship IntentSharp inside a product you sell or distribute From $25,000, quoted Priority

Rules that apply to every edition:

  1. Count the developers who write, change, build or debug code that calls IntentSharp. People who only operate or use the finished application do not count.
  2. Deployments are unlimited. A licensed organization may run its applications on as many servers, containers and environments as it needs.
  3. Developers are named. A seat can be reassigned when someone leaves a team, not shared between people.
  4. Consultancies and agencies license their own developers in one of the editions above, and the client licenses its own production use separately unless the consultancy's order names the client as the end user and pays for its tier.
  5. Three-year prepaid terms receive a 10 percent discount. Non-profit organizations and accredited educational institutions buying for administrative (non-coursework) use receive 25 percent off Team and Business.
  6. Shipping IntentSharp to third parties (OEM, embedded, resold) is not covered by Developer, Team, Business or Enterprise. It is quoted separately based on distribution volume.

3. What a license includes

  1. Production and commercial use rights for the licensed developers or organization, for the term.
  2. All updates and new releases published during the term, including major versions.
  3. Support by email at the response target for the edition, during US Eastern business hours.
  4. A license key, plus an invoice that serves as proof of license.
  5. A fallback right if the subscription lapses: you may keep using any version of IntentSharp released on or before the lapse date, without updates, fixes or support. The lapse date is the maintenance-until date in your last license key, which is normally the end of your last paid term. Versions released after that date refuse the key (see section 6).

4. How to buy

Evaluation keys

Start with an evaluation key. It turns on the library's evaluation notice, which shows the days left, instead of the no-key warning.

  1. Fill in the evaluation form at https://license.intentsharp.com/evaluate. Until the form opens, email licensing@c2consultants.net for an evaluation key. Give your name, work email, company and intended use, and accept the license terms.
  2. A one-seat evaluation key is emailed to that address. It is never shown on the page, so the form also proves the address. The key carries an expiry date, and the library reports it as an evaluation key through that date.
  3. One evaluation is issued per company email domain in any 365 days. For free-mail domains such as gmail.com or outlook.com the limit is per address instead.

The evaluation period itself is still the one in section 1.5 of the license: 30 consecutive days from your organization's first use, once per organization. The expiry date in the key does not extend it. An evaluation key is never refused by a newer IntentSharp build: the version gate (section 6) applies to paid keys only. Until the form is live, you can evaluate without a key (the library logs a warning) or ask for an evaluation key by email.

  1. Email licensing@c2consultants.net with the subject line IntentSharp license.
  2. In the email, include:
    1. your company's legal name and billing address;
    2. the edition you want (Developer, Team, Business, Enterprise or OEM);
    3. the number of developers who will work with IntentSharp;
    4. a contact name and email for the license and invoice.
  3. You will receive a quote and then an invoice. Pay the invoice by the method it lists.
  4. Once payment is received you will receive your license key by email, normally within one business day.

The license service, with the evaluation form and an online checkout at /buy (card payment through Stripe, the key emailed automatically), is built and tested but not yet hosted. Until it is live, email is the way to buy, and this page will link to the checkout when it is.

5. Where the license key goes

The key is read from IntentClientOptions.LicenseKey. Set it in one of these ways.

In code, with the builder:

var client = new IntentClientBuilder()
    .WithLicenseKey("YOUR-LICENSE-KEY")
    // other configuration
    .Build();

Or through configuration, using the IntentSharp:Options:LicenseKey value, for example in appsettings.json:

{
  "IntentSharp": {
    "Options": {
      "LicenseKey": "YOUR-LICENSE-KEY"
    }
  }
}

The environment variable form is IntentSharp__Options__LicenseKey.

Keep the key out of source control. License keys are confidential (section 5.4 of the license). What the library does with the key, and without one, is in section 6.

6. How enforcement works

  1. Signed keys, checked offline. A license key is a signed record of the licensee, edition, seat count and dates. IntentSharp checks the signature against public keys built into the library. It never phones home and needs no network access to check a key.
  2. Checked when the client is built, and kept current. The key is verified in IntentClientBuilder.Build(), which AddIntentSharp also uses. While the client is used, at most once per reminder interval (one hour by default), the library re-applies the date rules to the verified key, so a long-running process moves from licensed to renewal due to lapsed, or from evaluation to ended evaluation, on the right day. The signature and the version gate are not checked again. A request is never refused because of the license.
  3. The version gate is the only hard stop, and it applies to paid keys. Every build of IntentSharp carries its release date. If that date is later than the maintenance-until date in a paid key, Build() throws a LicenseException that names the licensee, the dates and how to buy. This is how, after a subscription lapses, versions released on or before the key's maintenance-until date keep working while newer versions refuse the key. An evaluation key is never refused this way: it reports an evaluation, or an ended evaluation, by its expiry date.
  4. Everything else is a notice. With no key, an invalid key, an ended evaluation, an expired key or a lapsed key, the library keeps working. It logs a warning or an error when the client is built, and again at most once an hour while it is used. Teams that want a hard stop in their own pipelines can set IntentClientOptions.FailWhenUnlicensed, which makes Build() throw when there is no key, the key is invalid or the evaluation has ended.
  5. Seats are not counted by the software. The seat count in a key is informational, and a seat count of 0 means unlimited (the library shows it as "unlimited seats"). Your edition and your order define what is covered, whatever number a key shows, and section 5.5 of the license lets the licensor ask you to certify your developer count.
  6. Evaluation keys come from the form on the license service at https://license.intentsharp.com/evaluate, or by email to licensing@c2consultants.net until the form opens, as described in section 4.
  7. The notices must not be removed. Removing, silencing or altering the license notices, or circumventing the key check or the version gate, is a breach of the license (section 5.3).

The behaviour state by state is in docs/architecture/licensing.md.

7. FAQ

7.1 What counts as evaluation?

Thirty consecutive days from the first time anyone in your organization uses IntentSharp, on development or test systems, with no real users, business processes or deliverables depending on it or on its output. The clock runs once per organization; it does not restart for a new project, version or developer. After 30 days, a business needs a license to keep developing with it.

7.2 Can I use it in an open-source project?

Not under the free grant beyond the 30-day evaluation. Non-commercial open-source projects may email to ask for a free license; each request is decided individually and recorded in writing. Shipping IntentSharp's source or binaries inside your project is redistribution and needs permission in every case.

7.3 I am a consultancy building for a client. Who needs the license?

Both sides. Your developers need a Developer, Team or Business license because they are doing paid work with the library. Your client needs a license for its own production use, unless your order names the client as the end user and pays for the client's tier. Email with the details and you will get one quote covering the engagement.

7.4 Does a contributor get a free license?

No. Contributions are welcome and are licensed to the licensor under section 7 of the license. Preparing a contribution is covered by the free grant, but a contribution does not grant, discount or extend a commercial license. Contributors are credited in the release notes.

7.5 Can I redistribute IntentSharp?

Only with an OEM license. Any redistribution to a third party, modified or not, including bundling it inside a product, needs one. Referencing the public NuGet package from your own project so that your users download it themselves is not redistribution by you, but their use is subject to the license and they need their own license for production or business use.

7.6 What happens if my subscription lapses?

You may keep using any version of IntentSharp released on or before the lapse date, without updates, fixes or support. The lapse date is the maintenance-until date in your last license key, normally the end of your last paid term. Versions released after that date refuse the key: building the client throws a LicenseException (section 6). Nothing stops a system that is already running.

There is a 30-day grace period after the renewal date during which you can renew without a new evaluation; the library logs a renewal warning during it and an error after it. After the grace period, a new order is needed.

7.7 Does the license ever convert to open source?

No. There is no change date. The terms stay as written unless the licensor issues new terms.

7.8 Who do I contact with other questions?

C2Consultants LLC, at licensing@c2consultants.net.