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 agentmods add skills/inscico/i-framework/featurenpx skills add InSciCo/i-framework --skill featuregit clone --depth 1 https://github.com/InSciCo/i-frameworkWhat 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 | $0.00057 | $0.00884 |
| Opus 5 | $0.00028 | $0.00442 |
| Sonnet 5 | $0.00011 | $0.00177 |
| Haiku 4.5 | $0.00006 | $0.00088 |
Grade A, and why
feature 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 2d 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 — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/feature — author one feature file (the atom)
You produce or revise exactly one file in Product/Features/ that conforms to the feature schema. Be strict: a feature is not done until it has a complete user story, at least three testable acceptance criteria, and a classification with a rationale.
Procedure
-
Locate the product root. Find
Product/Features/from the current directory. IfProduct/doesn't exist, tell the user to run/intentfirst (or offer to create the folder if they just want to draft features directly). -
New or revise?
- Revise: if the user names an existing feature (by id or title), read that file and edit in place — keep the
idstable. - New: scan
Features/F*.md, find the highestF<NNN>, assign the next id. Filename =F<NNN>-<kebab-slug>.md.
- Revise: if the user names an existing feature (by id or title), read that file and edit in place — keep the
-
Gather the content. You need: title, persona, capability, benefit (the user story); ≥3 acceptance criteria; classification; rationale; priority; status; and any dependencies on other features (
depends_on). If the caller (e.g./innovate) supplied these, use them. If invoked standalone with gaps, ask the user one focused question at a time (use AskUserQuestion for the classification fork). Do not invent a user story from nothing — ask. -
Classify (mirror
/classify's rubric):- Apply the decision test: "If a competitor shipped this exact feature tomorrow, would we lose our edge?" → innovation. "Would every competitor's product have this too?" → implementation.
- Set
innovation_weight: implementation →0; innovation →1–100by how much of the moat it carries. - For innovation features, set
contributes_toto a UVP id fromProduct/innovation.md(read it if present). If you can't point to a UVP element, that's a signal the feature may actually be implementation — challenge it. - Write a one-sentence
classification_rationale.
-
Write the file using the schema below (canonical copy lives at the plugin's
templates/feature.md). Validate before finishing:- User story has all three clauses (As a… / I want… / so that…).
- ≥3 acceptance criteria, each observable and testable (Given/When/Then, or a plain checkbox where GWT is awkward).
classification+innovation_weight+classification_rationaleall present and mutually consistent (implementation ⇒ weight 0).
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.
- 2d ago First seen · 62 lines · 57 tokens per session scan A 1c5cfaeee74c
feature is a skill published in the GitHub repository InSciCo/i-framework (4 stars, last pushed 1mo ago), licensed MIT. It adds 57 tokens to every session and 884 once invoked, about $0.0003 per session on Opus 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-08-31.
Other skills, from other repositories
resume-customizer
Director-level / senior PM resume + cover letter toolkit. Generates ATS-optimized documents using verified metrics and company-type strategies. For interview prep, STAR stories, outreach templates, and salary negotiation, see the references/ folder. Personalize references/YOURPROFILE.md first.
apply
Paste a JD to get full analysis + tailored resume + cover letter. Argument: [paste JD text here].
followup
Follow-up cadence tracker. Flags overdue and urgent applications, then drafts the second-touch email or LinkedIn message in your voice. Argument: none, or a company name to follow up on one.
patterns
Analyze the application tracker for what converts and what wastes time. Surfaces score thresholds, winning archetypes, and the blockers driving rejections, then proposes targeting changes. Argument: none.
track-application
Log a new application or check pipeline status. Argument: [company] [role] [status: applied/screening/interview/offer/rejected].
interview
Full interview prep for a specific company. Argument: [company name] [optional: role title].