Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add saajunaid/caddis-plugin --skill adopt-appgit clone --depth 1 https://github.com/saajunaid/caddis-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/saajunaid/caddis-plugin/adopt-app)<a href="https://agentmods.dev/skills/saajunaid/caddis-plugin/adopt-app"><img src="https://agentmods.dev/badge/skills/saajunaid/caddis-plugin/adopt-app/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/saajunaid/caddis-plugin/adopt-app"><img src="https://agentmods.dev/badge/skills/saajunaid/caddis-plugin/adopt-app.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00114 | $0.02552 |
| Opus 5.5 | $0.00046 | $0.01021 |
| Sonnet 5.5 | $0.00023 | $0.00510 |
| Haiku 4.5 | $0.00011 | $0.00255 |
Grade A, and why
adopt-app scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 13d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 191 lines — stays where its author put it; the contents beside it link to each section on GitHub.
adopt-app
An app that was never scaffolded is missing things a generated app gets for free: a repository on the team's host, CI, a declared stack, a health signal, a rollback. This skill finds out exactly which of them are missing, what only a person can answer, and in what order to fix it.
It never runs the app. It reads files, file metadata, git state and what the host has registered to start the folder. It does not execute an entry point, an installer, a build or a migration. The app is usually the only copy of something already in production.
It changes nothing outside its own output folder. Every phase is read-only. The last phase writes a plan; a different, team-specific skill performs it.
| Phase | Script | Writes |
|---|---|---|
| 1. Inventory | Get-AppInventory.ps1 |
inventory.json |
| 2. Stack | Resolve-AppProfile.ps1 |
profile.json |
| 3. Conformance | Test-AppConformance.ps1 |
conformance.json, answers.json |
| 4. Plan | New-AdoptionPlan.ps1 |
adoption-plan.md, adoption.json |
Output goes to <outDir>/<name>/, by default .caddis/adopt/<name>/ under the current repo.
Scripts are PowerShell 7 (pwsh); the code that runs on a remote box is Windows PowerShell 5.1
compatible.
Before you start
- Read the project config if one exists:
.caddis/adopt-app.json, or$env:ADOPT_APP_CONFIG. Six keys, every one of them read by a named script:outDir,fileBudget,skipFolders,skipPattern,untrackedThresholdMB, andexpectedRemotePattern- the regex that says what "the team's host" means here. Without that pattern the skill cannot tell a team repository from a personal one, and it says so rather than assuming. Shape and per-key detail:references/config.example.json. - Find out where the app really is. A folder on a developer's machine may be a stale copy of a server folder, or the only copy in existence. Phase 1 reports which, but ask as well.
- Say up front that nothing will be run or changed. People are right to be nervous about a tool pointed at a production folder.
What ships with it
16 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- profiles/_template/profile.json 1.8 KB
- profiles/batch-job/profile.json 2.5 KB
- profiles/dotnet-service/profile.json 2.2 KB
- profiles/java-service/profile.json 2.1 KB
- profiles/node-service/profile.json 2.1 KB
- profiles/php-db/profile.json 2.9 KB
- profiles/python-web/profile.json 2.6 KB
- profiles/static-site/profile.json 2.6 KB
- references/config.example.json 3.1 KB
- references/profile-contract.md 11 KB
- references/standard.md 18 KB
- scripts/AdoptCommon.ps1 46 KB runs code
- scripts/Get-AppInventory.ps1 15 KB runs code
- scripts/New-AdoptionPlan.ps1 17 KB runs code
- scripts/Resolve-AppProfile.ps1 10 KB runs code
- scripts/Test-AppConformance.ps1 21 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 13d ago Changed · +5 lines · -7 tokens per session 5dbc596e79f6
- 19d ago Changed · -68 tokens per session ed1d08d4eded
- 27d ago First seen · 186 lines · 189 tokens per session scan A 1cd88d35a412
adopt-app is a skill published in the GitHub repository saajunaid/caddis-plugin (0 stars, last pushed 2d ago), licensed MIT. It adds 114 tokens to every session and 2,552 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-21.
Other skills, from other repositories
goga-cookbook
Principles for applying DSL specification in cell and CODEMANIFEST design.
goga-review-plan
Verify execution plan completeness and correctness.
goga-define-challenge
Challenge the complete product definition before the PRD is generated.
goga-define-experience
Define the user experience required to achieve the established product goals and solve the identified problem.
goga-define-requirements
Define the product requirements that describe what the product must do to deliver the established user experience and achieve the agreed product goals.
goga-discover
Interview the user relentlessly about a decision until every branch of the design tree is resolved, then record the result as a short ADR.