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 commands/griddynamics/rosetta/api-aqa-flow-project-config-loadinggit clone --depth 1 https://github.com/griddynamics/rosettaWrote 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/commands/griddynamics/rosetta/api-aqa-flow-project-config-loading)<a href="https://agentmods.dev/commands/griddynamics/rosetta/api-aqa-flow-project-config-loading"><img src="https://agentmods.dev/badge/commands/griddynamics/rosetta/api-aqa-flow-project-config-loading.svg" alt="Measured on agentmods" 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 | $0.00027 | $0.02997 |
| Opus 5 | $0.00014 | $0.01499 |
| Sonnet 5 | $0.00005 | $0.00599 |
| Haiku 4.5 | $0.00003 | $0.00300 |
Grade A, and why
api-aqa-flow-project-config-loading 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 today.
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 — 138 lines — stays where its author put it; the contents beside it link to each section on GitHub.
<api_aqa_flow_project_config_loading>
<description_and_purpose>
Initialize the AQA session directory, load the existing project config or collect project-specific information from the user, and seed the workflow state file for backend API test automation. Canonical paths, the {IDENTIFIER} derivation rule, the config-key schema, and the state-file shape are owned by USE SKILL qa-structure — this phase binds to them and does not restate them.
</description_and_purpose>
<workflow_context>
- Phase 0 of 8 in
api-aqa-flow - Input (REQUIRED): user request with test case reference (TMS case ID, Issue Tracker ticket, or direct description — e.g. TestRail
C1234, JiraPROJ-123) - Input (OPTIONAL, when provided by user): repository-root
gain.jsonsdlc.*providers, Swagger/OpenAPI spec URL or path, Wiki/docs page URLs, backend source code locations - Output (paths owned by
qa-structure): per-sessionplans/api-aqa-{IDENTIFIER}/api-aqa-project-config.mdandplans/api-aqa-{IDENTIFIER}/initial-data.md; shared workflow stateagents/TEMP/<FEATURE>/api-aqa-state.md. - Prerequisite: starting new AQA flow
- HITL: conditional — user is questioned ONLY if the project config does not already exist
- Required skills:
qa-structure(paths /{IDENTIFIER}/ config schema / state shape),sensitive-data(redaction at intake) - Recommended skills:
questioning(config-missing interview) </workflow_context>
<phase_steps>
- Parse user input, resolve providers from
gain.json+ evidence, derive{IDENTIFIER}, and create the session directory + state-file stub. - Load this session's config if present, or collect the still-missing project info from the user and create it.
- Create the initial-data file and mark Phase 0 complete. </phase_steps>
<execute_config step="0.1" subagent="discoverer" role="AQA project config loader">
USE SKILL qa-structure for the session layout, {IDENTIFIER} derivation, and the config-key schema — the skill routes on those topics and loads its own files. This phase performs session initialization DIRECTLY (no dedicated init skill); it delegates only user-questioning to questioning. On the config-missing branch it performs a bounded set of loads (layout, config schema, then the interview + config template at step 0.1.5) — load each at its step via the owning skill; never write an artifact from memory.
-
Parse initial user input. Extract:
- Test case reference (REQUIRED): TMS case ID, Issue Tracker key/URL, or direct test-case description.
- Additional context (OPTIONAL): Swagger URL, Wiki pages, API documentation links.
- Supported phrasings:
"Write API tests for TC-1234","Automate backend tests for PROJ-123","Create API tests for the user registration endpoint","Automate TC-1234 with Swagger: https://api.example.com/swagger".
-
Resolve providers (merge evidence; do not force one source). Read repository-root
gain.json; usesdlc.test_management(_project),sdlc.wiki(_project), andsdlc.issue_tracker(_project)when populated. Explicit user names/handles win for this run; a recognizable provider URL or handle is valid evidence (a Confluence URL implies Confluence). If evidence conflicts or stays ambiguous, ask only about the unresolved provider; a missinggain.jsonnever blocks a direct-description run. -
Derive
{IDENTIFIER}per theqa-structurerule (Issue Tracker key → TMS case ID → kebab-case feature). On multiple candidates, first non-empty wins; record the chosen value + rejected candidates ininitial-data.md. -
Create the session directory
plans/api-aqa-{IDENTIFIER}/and write the state-file stub below toagents/TEMP/<FEATURE>/api-aqa-state.md. The full per-phase update schema is owned byapi-aqa-flow.md<state_file>; this stub is only the seed:# API AQA State - <Test Name / Feature> **Last Updated**: [DateTime] **Current Phase**: 0 **Test Case Source**: [TMS case ID / Issue Tracker ticket / Manual] **Feature**: [Feature Name] **IDENTIFIER**: [the {IDENTIFIER} value chosen above — must match plans/api-aqa-{IDENTIFIER}/ directory] **Providers**: [resolved TMS / Wiki / Issue Tracker + project handles, or N/A per role] ## Phase Completion Status - [x] Phase 0: Project Config Loading - [ ] Phase 1: Data Collection - [ ] Phase 2: API Spec Analysis - [ ] Phase 3: Gap & Requirements Clarification - [ ] Phase 4: Test Case Specification - [ ] Phase 5: Test Implementation - [ ] Phase 6: Execution & Report Analysis - [ ] Phase 7: Test Corrections -
Load or create the project config at
plans/api-aqa-{IDENTIFIER}/api-aqa-project-config.md(per-session, inside the feature plan folder): if the file exists AND is non-empty →<config_exists>; if it is missing OR empty →<config_missing>. -
Verify the feature plan folder
plans/api-aqa-{IDENTIFIER}/exists and the config is non-empty before proceeding.
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.
- today First seen · 138 lines · 27 tokens per session scan A c3a643c6af1e
api-aqa-flow-project-config-loading is a command published in the GitHub repository griddynamics/rosetta (342 stars, last pushed today), licensed Apache-2.0. It adds 27 tokens to every session and 2,997 once invoked, about $0.0001 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-09-03.
Other commands, from other repositories
resolve-conflicts
Resolve merge conflicts on a GitHub PR by merging the base branch into the PR branch in an isolated git worktree, with JSON/markdown-aware conflict resolution.
react-router-client-loader
Do this in a clientLoader and use loaderData to render the component. DO NOT create mock data, new interfaces, or mock data loader functions. Instead, assume loaderData has all of the data you need to render the component.
rclone_archive_extract
Extract archives from source to destination.
rclone_completion
Output completion script for a given shell.
rclone_config_encryption_check
Check that the config file is encrypted.
rclone_config_file
Show path of configuration file in use.