Skip to content

Releases: Freakling/SaaSAllTheThings

v0.9.1

Choose a tag to compare

@Freakling Freakling released this 17 Oct 22:57
59fe2f6

What's new

  • An install from a source with unreleased changes says so. When the source's CHANGELOG.md has an Unreleased section with entries, the manifest's first line reads # saasallthethings <version> + unreleased (<commit>), and the closing lines say the install is a development snapshot, not a release, with a link to the releases page. The commit is recorded in a # source line whenever the source is a git checkout, so a release install records its commit too. A release (an empty Unreleased section, or none) records the plain version as before. Upgrade detection strips the suffix, so an upgrade from an unreleased install works.
    • Upgrade steps: none needed. The next upgrade rewrites the manifest.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Your app needs git (git init if it has none) and no uncommitted changes. You also need bash (on Windows it comes with Git for Windows), and the toolchain of your backend stack: the .NET SDK 8+ for the default.

Option 1: the Claude Code plugin. In Claude Code:

/plugin marketplace add Freakling/SaaSAllTheThings
/plugin install saasallthethings@saasallthethings

The plugin installs the latest release. Then open a new Claude Code session in your app's folder (or run /reload-plugins), and run /saasallthethings:saas-all-the-things.

Option 2: manual install. Put the latest release in your app's root folder as a folder named SaaSAllTheThings. The release's tag is v followed by its version number, and the Releases page shows the latest one. Either run git clone --branch <tag> --depth 1 https://github.com/Freakling/SaaSAllTheThings.git SaaSAllTheThings there, replacing <tag> with it, or download that release's source zip from the Releases page and rename the extracted folder. Then ask your assistant:

Read SaaSAllTheThings/ONBOARDING.md and follow it to install SaaSAllTheThings into this project.

Option 3: the skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add Freakling/SaaSAllTheThings

Then ask your assistant to "SaaS all the things" in your app's folder. The skill clones this repository's matching release into a temporary folder outside your app, and follows ONBOARDING.md from there.

How to upgrade

  • Plugin: run /plugin marketplace update saasallthethings and then /plugin update saasallthethings@saasallthethings. Start a new session in the app and run /saasallthethings:saas-all-the-things again.
  • Manual: put the new SaaSAllTheThings folder in the app, and ask for ONBOARDING.md again.
  • Skills CLI: run npx skills add Freakling/SaaSAllTheThings again, then ask for the upgrade.

Only the framework's own files are replaced, and your edits to them are kept. When a new version also changes a file you edited, the new version is written next to it as <file>.satt-new for you to merge.

This release's upgrade steps: none needed. The next upgrade rewrites the manifest.

v0.9.0

Choose a tag to compare

@Freakling Freakling released this 16 Oct 18:17
7ace08a

What's new

  • New: a product brief template for you to fill in, in your own words (product/director-brief.md). Every app gets it, for a new SaaS or an existing app. It is the SaaS variant of the director's product brief. It covers the product (summary, problem, goals, audience, value and features, user flow), and four sections a customer's architect or product owner answers: the enterprise architecture the SaaS must fit into (identity provider, data residency, hosting constraints, integrations, existing standards, approvals), the requirements (functional and non-functional), the security requirements, and the control frameworks the customer must meet, with the customer's security framework named. Onboarding offers it before the interview, as an alternative to the chat interview or an addition to it, and says why it helps: a written brief gives the agent your intent and context, and sets the stage for the design sessions, the assessment and the builds that follow, anchored in the customer's security framework.
    • It stays yours. product/prd.md remains the record of current requirements that the agent maintains. Your brief is input: the agent reads it, never edits it, and writes the current requirements into the PRD's own sections (Data and Compliance carries the control frameworks and the security requirements), so each fact lives in one place. It never treats a requirement as met because the brief names a framework.
    • Onboarding reads a filled one first. For a new SaaS it takes the interview's answers from it and asks only what it leaves open. For an existing app it builds the initial assessment (PRD sections, Architecture rows, first items) from it, together with the code, the assessment report and the workshop notes. It marks what it took (from your document) and what it worked out itself (inferred, please confirm), records decisions with why: from your document, drafts ADRs for the architecture constraints it names, and turns what is undecided into open questions. It tells you to put the frameworks' requirements, or the customer's own control list, in compliance/, which architecture sessions and research read.
    • The assessment reads it too. saas-assessment asks for the brief in its first questions, reads a filled one first, takes the answers it gives instead of asking again, and marks in the report what came from the brief and what it inferred.
  • Align checks the PRD and ADRs against reality. align.md's item 6 is "Brief against reality". It reads the whole PRD and every ADR, and checks every statement of state (a section marked later or planned, a count, a list of what exists, a line saying work waits on something, "once X exists", and an ADR's status) against the built system, the done items and the latest releases. It also checks every decision line since the last docs: align commit one by one, not a sample. Mechanical drift gets fixed; design calls are reported with the stale statement named.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Your app needs git (git init if it has none) and no uncommitted changes. You also need bash (on Windows it comes with Git for Windows), and the toolchain of your backend stack: the .NET SDK 8+ for the default.

Option 1: the Claude Code plugin. In Claude Code:

/plugin marketplace add Freakling/SaaSAllTheThings
/plugin install saasallthethings@saasallthethings

The plugin installs the latest release. Then open a new Claude Code session in your app's folder (or run /reload-plugins), and run /saasallthethings:saas-all-the-things.

Option 2: manual install. Put the latest release in your app's root folder as a folder named SaaSAllTheThings. The release's tag is v followed by its version number, and the Releases page shows the latest one. Either run git clone --branch <tag> --depth 1 https://github.com/Freakling/SaaSAllTheThings.git SaaSAllTheThings there, replacing <tag> with it, or download that release's source zip from the Releases page and rename the extracted folder. Then ask your assistant:

Read SaaSAllTheThings/ONBOARDING.md and follow it to install SaaSAllTheThings into this project.

Option 3: the skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add Freakling/SaaSAllTheThings

Then ask your assistant to "SaaS all the things" in your app's folder. The skill clones this repository's matching release into a temporary folder outside your app, and follows ONBOARDING.md from there.

How to upgrade

  • Plugin: run /plugin marketplace update saasallthethings and then /plugin update saasallthethings@saasallthethings. Start a new session in the app and run /saasallthethings:saas-all-the-things again.
  • Manual: put the new SaaSAllTheThings folder in the app, and ask for ONBOARDING.md again.
  • Skills CLI: run npx skills add Freakling/SaaSAllTheThings again, then ask for the upgrade.

Only the framework's own files are replaced, and your edits to them are kept. When a new version also changes a file you edited, the new version is written next to it as <file>.satt-new for you to merge.

This release's upgrade steps:

  1. product/director-brief.md: the installer adds the brief when the app doesn't have it (project seeds are copied once and then yours). After the upgrade, the agent tells you it exists, where it is, and why writing it helps. If you or the customer's architect or product owner fill it in, the agent reads it as ONBOARDING.md describes and brings product/prd.md in line, marking what it inferred.

The align change is framework-owned and arrives on upgrade. No other app-owned file changes are required.

v0.8.0

Choose a tag to compare

@Freakling Freakling released this 15 Oct 21:59
a1e816b

What's new

  • New: /research, the research assistant (procedures/research.md). When a product or architecture question depends on facts nobody has checked, or you ask for research, a read-only researcher subagent looks into it in a fresh context and reports a note. It informs; you decide: its recommendation is one option shown with its reason, and it never records a decision, edits the PRD, product/decisions.md or an ADR, answers an open question, accepts an ADR, or asks you anything. It states its assumptions in the note instead.
    • Research is a task type. Research items get their own IDs, R<n>, drawn from the Next IDs line like bugs. Instead of Done when they have Question: and, when they feed an open question, Informs: Q<n>. They are sized like any item, and the size picks the model. An item is done when its note exists.
    • Two ways to start. On the fly: a product or architecture session delegates a complex question, or you run /research <question>, and the item is created and run at once. For later: queue the item, and list it under Depends on of the tasks that need its findings. A task that needs the decision stays gated by the open question itself.
    • /next-task hands research items to the researcher. No check runs and no review: research changes no code. This session writes the note to product/research/YYYY-MM-DD-<slug>.md and commits it with the records. A finished item that informs Q<n> makes that question ready for a product or architecture call, and a run goes on to the next item.
    • Product and architecture sessions list product/research/ first, show notes on the topic in the context brief, delegate a question that needs facts, and link the note afterwards: the decision line's why ends with its path, and the ADR's Context does.
    • The note is one dated file per topic: the conclusion first, the options and trade-offs, the recommendation, every claim with its source, source tier and confidence, the date the claims were verified, and what stays unknown.
    • A domain file (.satt/research-domain.md) is read when the question touches Azure, the reference architecture, the customer's security framework or an architecture decision. It sets out Azure first when Azure is central (current Microsoft guidance as input, never as the answer), the reference architecture's authority (a deviation starts with "comply"; costs start from reference/cost.md), the customer's security framework as a binding source (each requirement traced to a control and labelled direct, partial, interpretive or unverified, with the shared-responsibility boundary named), an ADR-ready summary for a significant decision, and a checklist for architecture questions.
    • Confidentiality. Project text, customer and tenant names, requirements, integration contracts and resource identifiers never go into a public search query or fetch.
    • The researcher has Read, Grep, Glob, WebSearch and WebFetch: no edit, write or shell tool. .claude/settings.json allows web search and fetch. Claude Code can't scope a permission to one subagent, so the allow applies to every session in the app, not only the researcher; the researcher's own tool list is the restriction. Everything with side effects keeps asking.
  • Align checks that Next IDs has an R counter, that research items have a Question: and an Informs: instead of Touches and Done when, and that each done research item has its note.
  • The design-session skill (saas-design-session) doesn't carry the research procedure, because the Claude apps have no subagents and no app folder to hold notes. Its bundled rules.md, tasks.md, design.md and architect.md are refreshed, and its SKILL.md says what to do where a procedure says to research first: check one fact yourself, otherwise make the missing facts open questions or ask.
  • Selftest checks that the research files exist and are wired into the procedures, the item format, the seeds and the docs, that the researcher has no edit, write or shell tool, that only permissions.allow lists web search and fetch, that the installer ships everything (including with --tools none), that a research note commits without running the check, and that the design-session skill leaves the procedure out and says so.
  • The example (examples/order-desk) shows the R counter and the note folder, and the scenarios gain three for research.
  • The plugin installs the latest release. The marketplace names the plugin as a github source with ref v<version>, because Claude Code's relative-path source (./) can't pin a ref and so took the default branch. The skills already clone v<version>; with this, every install path gets the release, and main is where changes are integrated. .claude/CLAUDE.md › After any change lists .claude-plugin/marketplace.json among the files that carry the version and says each release is tagged v<version> once its pull request is merged. The selftest checks the marketplace's ref against VERSION.
  • The manual install takes the latest release. Option 2 in the README clones the release tag (git clone --branch <tag> --depth 1), or downloads that release's source zip, instead of main, so it installs the same release as the plugin and the skills. The Releases page shows the tag.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Your app needs git (git init if it has none) and no uncommitted changes. You also need bash (on Windows it comes with Git for Windows), and the toolchain of your backend stack: the .NET SDK 8+ for the default.

Option 1: the Claude Code plugin. In Claude Code:

/plugin marketplace add Freakling/SaaSAllTheThings
/plugin install saasallthethings@saasallthethings

The plugin installs the latest release. Then open a new Claude Code session in your app's folder (or run /reload-plugins), and run /saasallthethings:saas-all-the-things.

Option 2: manual install. Put the latest release in your app's root folder as a folder named SaaSAllTheThings. The release's tag is v followed by its version number, and the Releases page shows the latest one. Either run git clone --branch <tag> --depth 1 https://github.com/Freakling/SaaSAllTheThings.git SaaSAllTheThings there, replacing <tag> with it, or download that release's source zip from the Releases page and rename the extracted folder. Then ask your assistant:

Read SaaSAllTheThings/ONBOARDING.md and follow it to install SaaSAllTheThings into this project.

Option 3: the skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add Freakling/SaaSAllTheThings

Then ask your assistant to "SaaS all the things" in your app's folder. The skill clones this repository's matching release into a temporary folder outside your app, and follows ONBOARDING.md from there.

How to upgrade

  • Plugin: run /plugin marketplace update saasallthethings and then /plugin update saasallthethings@saasallthethings. Start a new session in the app and run /saasallthethings:saas-all-the-things again.
  • Manual: put the new SaaSAllTheThings folder in the app, and ask for ONBOARDING.md again.
  • Skills CLI: run npx skills add Freakling/SaaSAllTheThings again, then ask for the upgrade.

Only the framework's own files are replaced, and your edits to them are kept. When a new version also changes a file you edited, the new version is written next to it as <file>.satt-new for you to merge.

This release's upgrade steps:

  1. TASKS.md: add an R counter to the Next IDs line, so **Next IDs:** T12 · B3 becomes **Next IDs:** T12 · B3 · R1.
  2. product/research/: the installer creates the folder with a short README.md (a project file, yours from then on) when the app doesn't have it. Notes are added there as research runs; commit them like the other records.
  3. .claude/settings.json is framework-owned, so it is replaced on upgrade. If you edited it, the new version arrives as .claude/settings.json.satt-new; merge it, and make sure "WebSearch" and "WebFetch" are in permissions.allow. They are allowed for every session in the app, not only the researcher, which lets the researcher read the web without asking each time. Restart Claude Code afterwards so the new skill, subagent and permissions load.

No other app-owned file changes are required.

v0.7.0

Choose a tag to compare

@Freakling Freakling released this 15 Oct 18:11
2355683

What's new

  • README: "Part of Director-Driven Development". A new section after the opening description places SaaSAllTheThings among the three Director-Driven Development frameworks (Godot-Director, App-Director, SaaSAllTheThings), and links the step-by-step guide to building a B2B SaaS on Azure with it.
  • The upgrade-file check ignores nested clones. git ls-files lists a nested repository in an ignored folder (such as a clone in work/) as a directory, which blocked every commit while no upgrade file existed. The pre-commit hook, the /align check and onboarding now keep only paths that end in .satt-new, so a real upgrade file still blocks the commit. The self-test checks both cases.
  • The self-test skips .NET without an SDK. A machine with the .NET runtime host but no SDK ran the .NET checks, and three of them failed. The self-test now skips the .NET part unless dotnet --list-sdks lists an installed SDK, with the same message as a machine without dotnet. Where an SDK is installed, the .NET part runs as before.
  • One commit model, shared with App-Director and Godot-Director. One task, one commit, with the pre-commit check as the gate.
    • A single /next-task pauses for your approval of its commit.
    • A run commits without pausing. When you ask for one ("grab tasks until you're blocked", "work through the queue", "the next N tasks"), each task commits as soon as its check passes. The run stops when an item is blocked on you, a build fails, or you decline a commit, and the final report lists every commit. A run approves commits in advance, not pushes, deploys or changes to cloud resources.
    • git commit is allowed in .claude/settings.json without a prompt. git push, rebasing, restoring, git config and the az and azd commands listed under ask still ask, and skipping the check with --no-verify is still denied.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Claude Code plugin: in Claude Code, run:

/plugin marketplace add Freakling/SaaSAllTheThings
/plugin install saasallthethings@saasallthethings

Then open a new Claude Code session in your app's folder (or run /reload-plugins), and run /saasallthethings:saas-all-the-things.

Manual install: put this repository in your app's root folder as a folder named SaaSAllTheThings: run git clone https://github.com/Freakling/SaaSAllTheThings.git SaaSAllTheThings there, or download the zip and rename the extracted folder. Then ask your assistant:

Read SaaSAllTheThings/ONBOARDING.md and follow it to install SaaSAllTheThings into this project.

Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add Freakling/SaaSAllTheThings

Then ask your assistant to "SaaS all the things" in your app's folder. The skill clones this repository's matching release into a temporary folder outside your app, and follows ONBOARDING.md from there.

How to upgrade

  • Plugin: run /plugin marketplace update saasallthethings, then /plugin update saasallthethings@saasallthethings. Start a new session in the app and run /saasallthethings:saas-all-the-things again.
  • Manual: put the new SaaSAllTheThings folder in the app, and ask for ONBOARDING.md again.
  • Skills CLI: run npx skills add Freakling/SaaSAllTheThings again, then ask for the upgrade.

Only the framework's own files are replaced, and your edits to them are kept. When a new version also changes a file you edited, the new version is written next to it as <file>.satt-new for you to merge.

This release's upgrade steps: none to your own files. .claude/settings.json is framework-owned, so it is replaced on upgrade. If you edited it, the new version arrives as .claude/settings.json.satt-new; merge it, and make sure Bash(git commit *) is in permissions.allow and no longer in permissions.ask (an ask entry wins over allow, so the old entry would keep the prompt). Restart Claude Code afterwards so the changed skill description and permissions load.

v0.6.0

Choose a tag to compare

@Freakling Freakling released this 09 Oct 12:01

What's new

  • /drift-reset, the design drift reset. When a design principle has been built in more than one way, patching makes it worse; the reset guides the director through a structured redo instead. Align often, reset when you have to.
    • Only the director starts it. The assistant can't start it on its own; /align may only recommend it.
    • As built (read only): one read-only analysis per area in a fresh context, with tenancy and identity always its own area, since drift there is a security finding. Writes resets/YYYY-MM-DD/as-built.md with file:line evidence.
    • Interpretations (read only): each pillar, PRD rule, contract rule and accepted ADR classified as consistent, divergent or contradictory, with its failure mode.
    • Rewrite the design: one design call per split item, as in /design, with room for the director's own answer. The old PRD is archived; only the director's choices reach decisions.md. Accepted ADRs are never dropped without a new ADR, and framework rules (tenancy, identity, cost, the check) are out of scope: a real conflict goes through /architect.
    • Plan the rebuild: sized TASKS.md items with exact Touches, security bugs first. No application code; the rebuild runs through /next-task.
    • /drift-reset postmortem: checks each failure mode after the rebuild and proposes checks for tools/check.local.sh as design calls, so repeated judgment turns into checks.
  • /align recommends a drift reset when a conflict has come up before, or one conflict involves several principles.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Claude Code plugin (recommended): Settings › Plugins, search for SaaSAllTheThings, click Add.

Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add saas-all-the-things

Direct: clone this repository to a permanent location and follow ONBOARDING.md with $SATT pointing at it.

How to upgrade

Re-run the installer (/saas-all-the-things or npx skills add saas-all-the-things) in the app's repository.

This release's upgrade steps: none. Framework files are replaced on upgrade; resets/ is created by the first reset.

v0.5.6

Choose a tag to compare

@Freakling Freakling released this 08 Oct 22:48

What's new

  • Context surfaced to the director before every options call. In design, architecture and integration sessions, the session now shows the relevant existing decisions before presenting options — so the director always sees the full picture before choosing:
    • Design session (design.md): quotes or summarises the applicable Product Pillars, the current PRD rule, and any related line from decisions.md.
    • Architecture session (architect.md): quotes or summarises the reference rule in question, the classification (open choice, deviation, gap or requirements conflict), and the title and status of any related ADRs.
    • Integration session (integrate.md): quotes the relevant guidance from integrations.md (including the Navision table) and the current contract value before each round.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Claude Code plugin (recommended): Settings › Plugins, search for SaaSAllTheThings, click Add.

Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add saas-all-the-things

Direct: clone this repository to a permanent location and follow ONBOARDING.md with $SATT pointing at it.

How to upgrade

Re-run the installer (/saas-all-the-things or npx skills add saas-all-the-things) in the app's repository.

This release's upgrade steps: none. Framework files are replaced on upgrade.

v0.5.5

Choose a tag to compare

@Freakling Freakling released this 08 Oct 22:45

What's new

  • Architecture session context surfaced to the director. Before offering options on any architecture question, the session now quotes or summarises the reference rule in question, the classification (open choice, deviation, gap or requirements conflict), and the title and status of any related ADRs. The director sees what they are deciding against before choosing.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Claude Code plugin (recommended): Settings › Plugins, search for SaaSAllTheThings, click Add.

Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add saas-all-the-things

Direct: clone this repository to a permanent location and follow ONBOARDING.md with $SATT pointing at it.

How to upgrade

Re-run the installer (/saas-all-the-things or npx skills add saas-all-the-things) in the app's repository.

This release's upgrade steps: none. Framework files are replaced on upgrade.

v0.5.4

Choose a tag to compare

@Freakling Freakling released this 08 Oct 22:36

What's new

  • Design session context surfaced to the director. Before offering options on any product question, the session now quotes or summarises the applicable Product Pillars, the current PRD rule, and any related line from decisions.md. The director sees the full picture before choosing, not just the options.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Claude Code plugin (recommended): Settings › Plugins, search for SaaSAllTheThings, click Add.

Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add saas-all-the-things

Direct: clone this repository to a permanent location and follow ONBOARDING.md with $SATT pointing at it.

How to upgrade

Re-run the installer (/saas-all-the-things or npx skills add saas-all-the-things) in the app's repository.

This release's upgrade steps: none. Framework files are replaced on upgrade.

v0.5.3

Choose a tag to compare

@Freakling Freakling released this 07 Oct 13:04

What's new

  • En and em dashes removed throughout. Every en dash (U+2013) and em dash (U+2014) replaced by its contextual equivalent: a hyphen for ranges (1-3, 2-4), a colon or comma for asides, and parentheses for parentheticals. selftest.sh now asserts the count is zero. .claude/CLAUDE.md adds the typography rule for future edits.
  • Project seeds updated. AGENTS.md Layout table, TASKS.md field values and human item headings, product/prd.md comment, and validation/TEMPLATE.md now use hyphens in place of dashes.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Claude Code plugin (recommended): Settings › Plugins, search for SaaSAllTheThings, click Add.

Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add saas-all-the-things

Direct: clone this repository to a permanent location and follow ONBOARDING.md with $SATT pointing at it.

How to upgrade

Re-run the installer (/saas-all-the-things or npx skills add saas-all-the-things) in the app's repository.

This release's upgrade steps:

  • In your AGENTS.md Layout table, any empty "Layer" cell written as an em dash becomes (none).
  • In TASKS.md, field values written as a single em dash (Depends on, PRD, Touches) become none; human item headings with the size written as an em dash become none.
  • In product/prd.md and validation/TEMPLATE.md, replace en dashes in numeric ranges with hyphens (1-5, 3-6, 3-5).
  • Framework files are replaced on upgrade: no manual changes needed there.

0.5.1

Choose a tag to compare

@Freakling Freakling released this 07 Oct 12:11

What's new

  • Model sizing corrected to five independent entries. The two-tier rule (XS/S → smallest, M/L/XL → session model) was wrong: M, L and XL all ran on the same model regardless of complexity. rules.md now defines one model ID per size; for Claude Code the defaults are Haiku for XS+S, Sonnet for M, and Opus for L+XL. next-task.md reads the per-size entry and falls back to the session model if none exists. Escalation (XS→S, S→M) now uses the model mapped to the new size.
  • /refresh-model-sizing skill and procedure (procedures/refresh-model-sizing.md): checks whether the tool can spawn a subagent with a chosen model (capability check — Claude Code: yes; if the tool cannot: skip), proposes the five defaults, and writes or updates the block in AGENTS.md › Project rules.
  • Onboarding step 8 updated: does the capability check inline, writes the full five-entry block for Claude Code (or skips for unsupported tools), mentions /refresh-model-sizing for later updates.
  • AI assistant support statement aligned. One position throughout: designed to work with any assistant that reads AGENTS.md, built and tested on Claude Code only. Removed hedges and competitor names from user-facing text. Capability note added to the README "With another AI assistant" section.

How to install

Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.

Your app needs git, bash (on Windows: Git for Windows), and the toolchain for your backend stack (.NET SDK 8+ for the default).

Option 1 — Claude Code plugin:

/plugin marketplace add Freakling/SaaSAllTheThings
/plugin install saasallthethings@saasallthethings

Open a new session in your app's folder (or run /reload-plugins), then run /saasallthethings:saas-all-the-things.

Option 2 — Skills CLI (installs the skill for the assistant you choose; in Claude Code it becomes a slash command):

npx skills add Freakling/SaaSAllTheThings

Then ask "SaaS all the things" in your app's folder.

Option 3 — Manual: clone or download this release into your app root as a folder named SaaSAllTheThings, then ask your assistant to read SaaSAllTheThings/ONBOARDING.md and follow it.

How to upgrade

Plugin: /plugin marketplace update saasallthethings then /plugin update saasallthethings@saasallthethings. Open a new session and run /saasallthethings:saas-all-the-things — onboarding detects the upgrade, summarises what changed, and asks Fast or Full.

Skills CLI: npx skills add Freakling/SaaSAllTheThings again, then ask "SaaS all the things".

Manual: put this release's folder in the app and ask the assistant to read ONBOARDING.md again.

Only framework files are replaced; your edits are kept.

This release's upgrade step: replace the Model sizing: on / Model sizing: off line in AGENTS.md › Project rules with the five-entry block. Run /refresh-model-sizing to do this — it will check capability and propose the defaults.