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 jabrena/plinth --skill 031-architecture-adr-functional-requirementsgit clone --depth 1 https://github.com/jabrena/plinthWrote 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/jabrena/plinth/031-architecture-adr-functional-requirements)<a href="https://agentmods.dev/skills/jabrena/plinth/031-architecture-adr-functional-requirements"><img src="https://agentmods.dev/badge/skills/jabrena/plinth/031-architecture-adr-functional-requirements/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/jabrena/plinth/031-architecture-adr-functional-requirements"><img src="https://agentmods.dev/badge/skills/jabrena/plinth/031-architecture-adr-functional-requirements.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00115 | $0.00746 |
| Opus 5 | $0.00057 | $0.00373 |
| Sonnet 5 | $0.00023 | $0.00149 |
| Haiku 4.5 | $0.00012 | $0.00075 |
Grade A, and why
031-architecture-adr-functional-requirements 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 12d 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 — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Create ADRs for Functional Requirements (CLI and/or REST API)
Guide stakeholders through a structured conversation to uncover and document technical decisions and functional requirements for command-line tools, REST/HTTP APIs, or combined surfaces. This is an interactive SKILL. The ADR is the documentation of that conversation, not the conversation itself. Infer CLI vs API from the current workspace when possible; ask a short clarifying question when unclear. Use only the current conversation and repository files explicitly available in the current session.
What is covered in this Skill?
- Surface discovery: CLI, REST/HTTP API, or both (inference + confirmation)
- Initial context: purpose, users/consumers, constraints, timeline, load (API when relevant)
- Functional requirements: surface-specific workflows, I/O, resources, errors
- Technical decisions: language/framework; REST blocks (API design, auth, data, infra, testing/monitoring) and/or CLI blocks (architecture, data/integration, testing/distribution)
- Decision synthesis and validation before ADR creation
- ADR document generation and next steps
Constraints
Use conversational discovery in small batches, build on answers, validate before proceeding. Only create ADR after thorough conversation and user confirmation.
- MANDATORY: Use the local shell
datecommand before starting to get accurate timestamps for the ADR - MUST: Load the bundled reference template during the current session; ignore prior-session content unless the user provides it again
- MUST: Pose one or two discovery questions at a time; never all at once
- MUST: Validate summary with user (Does this accurately capture your requirements?) before proposing ADR creation
- MUST: Wait for user to confirm proceed before generating the ADR
When to use this skill
- Create ADR for functional requirements
- Document functional requirements
- Capture functional requirements
- Generate functional requirements in an ADR
- Decide CLI versus REST functional requirements for an ADR
What ships with it
1 file 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.
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.
- 12d ago First seen · 65 lines · 115 tokens per session scan A d43a1ebf01cf
031-architecture-adr-functional-requirements is a skill published in the GitHub repository jabrena/plinth (438 stars, last pushed yesterday), licensed Apache-2.0. It adds 115 tokens to every session and 746 once invoked, about $0.0006 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-30.
Other skills, from other repositories
sf-metadata-parser
Use this skill whenever the user wants to parse, analyze, document, or export SAP SuccessFactors OData metadata ($metadata XML). Triggers include: any mention of 'metadata', '$metadata', 'OData entities', 'entity fields', 'SF metadata', 'SuccessFactors schema', 'data dictionary', or requests to understand, compare, or…
spring-boot-engineer
Generates Spring Boot 3.x configurations, creates REST controllers, implements Spring Security 6 authentication flows, sets up Spring Data JPA repositories, and configures reactive WebFlux endpoints. Use when building Spring Boot 3.x applications, microservices, or reactive Java applications; invoke for Spring Data…
api-contract-review
Review REST API contracts for HTTP semantics, versioning, backward compatibility, and response consistency. Use when user asks "review API", "check endpoints", "REST review", or before releasing API changes.
spring-boot-patterns
Spring Boot best practices and patterns. Use when creating controllers, services or repositories, or when the user asks about Spring Boot layering, wiring, configuration or exception handling. For JPA and Hibernate behaviour, use jpa-patterns instead.
ash-framework
Ash Framework — resources, actions, policies, aggregates, calculations, AshPhoenix.Form, LiveView, migrations. Use when generating resources via mix ash.codegen, editing changes, checks, types, validations, or domain code interfaces.
tidewave-integration
Tidewave MCP runtime tools — debugging, smoke testing, live state inspection, SQL queries, hex docs. Use when evaluating code in a running Phoenix app.