agentleFS
rizqinrrrizqinrr/viserys-agent/AGENTS.md

viserys-agent

AGENTS.md560 starsChanged 50 days agoApache-2.0View on GitHub

Guidance for AI coding agents working in the viserys repository. When the user mentions Viserys, asks how to activate it, or asks whether it works in another project, do NOT assume. Follow these steps: If the global agent already exists, say so and confirm it is active. Do not offer to reinstall it. viserys is a self-contained engineering workflow pack for AI coding agents. It packages the planning, decomposition, verification, and review discipline that senior engineers apply, so an agent…

  • Commits and pushes

We split this AGENTS.md into the rules it gives an agent

15 rules. About 1 is common, 8 are distinctive, and 6 are very specific to this project.

  • ≈1

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  • could be automatic: a setting could enforce it
  1. Distinctive:

    When the user mentions Viserys, asks how to activate it, or asks whether it works in another project, do NOT assume.

    line 9
  2. Distinctive:

    Check the global scope: Look for an agent file at:

    line 11
  3. Distinctive:

    If the global agent already exists, say so and confirm it is active.

    line 22
  4. Distinctive:

    When multiple skills apply, follow lifecycle order.

    line 126
  5. Very specific:

    Create skills/<name>/SKILL.md with the frontmatter and the required sections.

    line 147
  6. Very specific:

    Add evals/cases/<name>.json with at least 3 positive triggers, 2 negative triggers, and 1 behavioral eval.

    line 148
  7. Very specific:

    If the eval kind is execution, add its fixture under evals/fixtures/<name>/.

    line 149
  8. Very specific:

    Update the phase/count summary in README.md when needed and the canonical catalog in docs/skills.md.

    line 150
  9. Very specific:

    Run node scripts/validate-skills.js and node scripts/run-evals.js --min-rank1 95.

    line 151
  10. Distinctive:

    Run these before declaring any change complete:

    line 159
  11. Distinctive:

    Do not modify files outside this repository without explicit permission.

    line 183
  12. Distinctive:

    Do not run git push unless the user asks.

    line 184
  13. Very specific:

    Do not delete or restructure docs/, evals/, or scripts/ without being asked.

    line 185
  14. Distinctive:

    Do not modify a user's global OpenCode configuration without explicit permission.

    line 186
  15. Common:

    Do not commit secrets, API keys, or tokens.

    line 187

≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

AGENTS.md

Guidance for AI coding agents working in the viserys repository.


0. Distribution Preference (read this first)

When the user mentions Viserys, asks how to activate it, or asks whether it works in another project, do NOT assume. Follow these steps:

  1. Check the global scope. Look for an agent file at:
    • ~/.config/opencode/agents/viserys.md
  2. If it does not exist, explain that there are two ways to use Viserys, then ask the user which they want:
    • Project scope — already active automatically. In this repository, press Tab and select viserys. Nothing to install.
    • Global scope — copy .opencode/agents/viserys.md into ~/.config/opencode/agents/, and register skills.paths in the user's global config. This activates Viserys in every project the user opens.
  3. If the user chooses global scope, print the exact commands for them to run. Do not modify the user's global configuration yourself unless they explicitly ask you to.
  4. Never touch configuration outside this repository without explicit permission.

If the global agent already exists, say so and confirm it is active. Do not offer to reinstall it.


1. Identity

viserys is a self-contained engineering workflow pack for AI coding agents. It packages the planning, decomposition, verification, and review discipline that senior engineers apply, so an agent follows the same process on every task instead of improvising.

  • Version: 0.1.0
  • Plain Markdown plus a small set of validator scripts
  • Core skills have no runtime or network dependency; adapters, hooks, browser tooling, and installation flows may have prerequisites
  • 22 skills, 7 personas, 7 shared checklists

The pack does not generate code by itself. It gives agents a process. Your job when working here is to keep that process intact and consistent.


2. Repository Structure

PathPurpose
skills/22 SKILL.md workflows, plus per-skill references/ and scripts/ where needed
agents/7 specialist personas (not active in OpenCode — see section 7)
references/7 shared checklists pulled in by skills on demand
.claude/commands/11 slash commands (Claude Code adapter)
commands/11 TOML commands (Antigravity adapter)
.gemini/commands/11 TOML commands (Gemini CLI adapter)
.opencode/ + opencode.jsonOpenCode primary agent/command adapters plus root project config for instructions and skills.paths
.claude-plugin/, .codex-plugin/, .agents/plugins/Plugin and marketplace manifests for other harnesses
evals/22 eval cases and their fixtures
scripts/6 structural validators, the eval runner, and their test suites
hooks/Session lifecycle hooks (Claude Code)
docs/Installation, commands, workflows, skills, personas, hooks, and skill-authoring documentation
tasks/Generated task artifacts, ignored by git

plugin.json at the root is the generic plugin manifest. The harness-specific manifests live inside their adapter directories.


3. Lifecycle and Skills

The skills map onto six phases:

DEFINE -> PLAN -> BUILD -> VERIFY -> REVIEW -> SHIP

DEFINE

SkillUse when
get-prdStarting a new application, system, or feature and no requirements document exists yet. Deep interview plus PRD authoring in one pass
idea-refineA concept is still vague and needs structured exploration
constraint-driven-developmentNo quality bar is written down, or checks are being silenced to get green

PLAN

SkillUse when
get-schemaAn approved PRD exists and the database schema needs designing before implementation
get-tasksAn approved PRD exists and needs executable task files

BUILD

SkillUse when
incremental-implementationA change touches more than one file and should land in thin slices
test-driven-developmentImplementing logic, fixing a bug, or changing behavior
get-designProduct-specific visual direction, anti-AI-slop review, and UI refinement
frontend-ui-engineeringBuilding or modifying user-facing interfaces
api-and-interface-designDesigning APIs, module boundaries, or public interfaces

VERIFY

SkillUse when
debugging-and-error-recoveryA test fails, a build breaks, or behavior is unexpected

REVIEW

SkillUse when
code-review-and-qualityBefore merging any change
code-simplificationCode works but is harder to read or maintain than it should be
security-and-hardeningHandling user input, auth, data storage, or external integrations
performance-optimizationPerformance requirements exist or a regression is suspected

SHIP

SkillUse when
git-workflow-and-versioningMaking any code change
ci-cd-and-automationSetting up or modifying build and deploy pipelines
deprecation-and-migrationRemoving old systems or migrating users
documentation-and-adrsRecording architectural decisions or changing public APIs
observability-and-instrumentationAdding logging, metrics, tracing, or alerting
shipping-and-launchPreparing to deploy to production

Meta

SkillUse when
using-agent-skillsDeciding which workflow applies to the current request

When multiple skills apply, follow lifecycle order. Not every task needs every skill.


4. Skill Conventions

  • One skill per directory: skills/<kebab-case-name>/SKILL.md.
  • The directory name and the frontmatter name must match exactly.
  • Frontmatter requires exactly two fields: name and description.
  • The description carries the routing load. It must state what the skill does, then Use when ... triggers in the vocabulary a user would actually type.
  • Required sections, in order: # Title, ## Overview, ## When to Use, ## The <Process>, ## Common Rationalizations, ## Red Flags, ## Verification.
  • A skill is Markdown-only by default. Add references/ or scripts/ only when content does not belong inline.
  • Skills link shared checklists with a relative path: ../../references/<file>.md.

The full specification lives in docs/skill-anatomy.md. Read it before writing or restructuring a skill. Do not restate it here.


5. Adding a Skill

  1. Confirm the workflow is not already covered by an existing skill. Prefer extending an existing skill over adding a near-duplicate.
  2. Create skills/<name>/SKILL.md with the frontmatter and the required sections.
  3. Add evals/cases/<name>.json with at least 3 positive triggers, 2 negative triggers, and 1 behavioral eval.
  4. If the eval kind is execution, add its fixture under evals/fixtures/<name>/.
  5. Update the phase/count summary in README.md when needed and the canonical catalog in docs/skills.md.
  6. Run node scripts/validate-skills.js and node scripts/run-evals.js --min-rank1 95.

Missing case files, incomplete case counts, unknown kind values, invalid fixture paths, and absent required fixtures are validation errors, not warnings.


6. Validation

Run these before declaring any change complete:

node scripts/validate-skills.js
node scripts/validate-commands.js
node scripts/validate-personas.js
node scripts/validate-artifact-paths.js
node scripts/validate-reference-links.js
node scripts/validate-versions.js
node scripts/run-evals.js --min-rank1 95
node --test scripts/*-test.js scripts/lib/*-test.js

Notes:

  • validate-versions.js reads git describe --tags --abbrev=0 and compares it to the version field in every manifest. Tags must have no v prefix (use 0.1.0, not v0.1.0).
  • run-evals.js is the free, deterministic Tier-2 check. --behavioral spends tokens and runs only on request.
  • Structural validators are covered by regression suites under scripts/ and scripts/lib/; validate-skills.js uses scripts/lib/skill-lint-test.js.
  • The canonical local/CI validation matrix lives in CONTRIBUTING.md#validasi.

7. Hard Boundaries

  • Do not modify files outside this repository without explicit permission.
  • Do not run git push unless the user asks.
  • Do not delete or restructure docs/, evals/, or scripts/ without being asked.
  • Do not modify a user's global OpenCode configuration without explicit permission.
  • Do not commit secrets, API keys, or tokens.

Note on personas

The seven files in agents/ (maester, kingsguard, prover, racer, strategist, artisan, chronicler) are not active in OpenCode. OpenCode discovers project agents under .opencode/agents/, not root agents/, and these files also lack an explicit mode: subagent field. They are Markdown persona prompts, usable by copying them into a supported location. Do not assume they can be invoked as subagents.

Note on tasks/

tasks/ holds internal working documents and is not tracked in git. Do not treat its contents as pack documentation, and do not reference it from README.md or docs/.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.