KeiSeiKit-1.0/_templates/specialist.toml.template
Parfii-bot 0be354a920 KeiSeiKit-public — clean state
Single-commit clean baseline after security scrub of niche-tells,
project codenames, internal jargon, and contributor-email leaks.

Contents:
- 100 Rust crates (_primitives/_rust/)
- 37 agent manifests (_manifests/) + generated specs (_generated/)
- 67 user-invocable skills (skills/)
- 33 hooks (hooks/)
- Composition blocks (_blocks/)
- Documentation (docs/, README.md)
- TS adapter packages (_ts_packages/)
- Assembler (_assembler/)
- Roles (_roles/)
- Templates (_templates/)
- Forgejo CI (.forgejo/)

Author: Denis Parfionovich <info@greendragon.info>

License: see LICENSE.
2026-05-01 12:09:03 +08:00

75 lines
3.1 KiB
Text

# Agent manifest — Constructor Pattern SSoT for {{NAME}}.
# The .md file is GENERATED from this manifest + _blocks/*.md by _assembler (Rust).
# Edit THIS file, not the generated .md.
#
# Template placeholders (filled by ~/.claude/skills/new-agent):
# {{NAME}} — agent slug, e.g. "myproject-specialist" (lowercase, [a-z0-9-])
# {{DESCRIPTION}} — one-line summary shown to the orchestrator
# {{TOOLS}} — comma-separated Rust-array of tool names, e.g. "Glob", "Grep", "Read"
# {{MODEL}} — usually "opus"; "sonnet" for cheaper bulk work
# {{MEMORY_PROJECT}} — memory file name, e.g. "myproject-project.md" (lives under
# your Claude Code memory directory, typically
# ~/.claude/memory/)
# {{PROJECT_CLAUDEMD}} — absolute-ish path to the project's CLAUDE.md
# {{ROLE}} — 2-3 sentence role description (triple-quoted string)
# {{BLOCKS}} — computed list of blocks to compose, one per line, quoted,
# with a trailing comma; see order rules below
# {{DOMAIN_IN}} — multi-line list of what the agent DOES (quoted TOML strings)
# {{FORBIDDEN_DOMAIN}} — multi-line list of hard prohibitions
# {{OUTPUT_EXTRA}} — extra output-report fields (appended to standard shape)
# {{HANDOFFS}} — array-of-tables, one per downstream agent
# {{REFERENCES}} — extra reference files beyond baseline/memory/project
#
# TOML scope rules enforced by the assembler:
# 1. All top-level keys (name, description, tools, model, role, blocks,
# domain_in, forbidden_domain, output_extra_fields, memory_project,
# project_claudemd) MUST appear BEFORE any [[handoff]] table.
# 2. [[handoff]] tables MUST appear BEFORE the final [references] table.
# 3. Obligatory blocks (validator hard-fails without them):
# "baseline", "evidence-grading", "memory-protocol"
# 4. At least one handoff is required.
# 5. domain_in and forbidden_domain must each have >=1 entry.
name = "{{NAME}}"
description = "{{DESCRIPTION}}"
tools = [{{TOOLS}}]
model = "{{MODEL}}"
memory_project = "{{MEMORY_PROJECT}}"
project_claudemd = "{{PROJECT_CLAUDEMD}}"
role = """
{{ROLE}}
"""
# Order matters: baseline always first, then evidence-grading, memory-protocol,
# then obligatory rule-blocks, then stack-specific, then deploy-specific, then
# domain-specific. The assembler concatenates in the order given here.
blocks = [
{{BLOCKS}}
]
domain_in = [
{{DOMAIN_IN}}
]
forbidden_domain = [
{{FORBIDDEN_DOMAIN}}
]
# Agent-specific output fields (appended to the standard report shape defined
# in the baseline block). Leave the list non-empty so reports stay auditable.
output_extra_fields = [
{{OUTPUT_EXTRA}}
]
# Handoffs MUST come after all top-level keys (TOML array-of-tables scope rule).
# Each downstream agent = one [[handoff]] table.
{{HANDOFFS}}
# References (extra files beyond auto-included baseline/memory/project).
# MUST be the LAST section in the file — any top-level key after it would be
# parsed as belonging to [references].
[references]
extra = [
{{REFERENCES}}
]