[role] name = "edit-shared" display-name = "code-implementer (shared-SSoT edit scope)" description = "Same baseline as edit-local, with one relaxed scope entry permitting edits to a task-specified SSoT path (e.g. workspace Cargo.toml, registry file). The relaxation is configured per task via `[scope].files-whitelist` in task.toml." spawnable = true claude-subagent-type = "code-implementer" [capabilities] # Layer E — inherits edit-local baseline. The SSoT relaxation rides on # scope::files-whitelist parameterization in task.toml. `relaxes` is # available for tasks that explicitly drop a parent capability; by default # we keep the full edit-local set. # # As of 2026-04-29 substrate.rs supports `extends` inheritance: parent's # `required` list is loaded recursively and merged (parent first, dedup, # then `relaxes` removed). See _assembler/src/substrate.rs::merge_extends. extends = "edit-local" required = [] relaxes = [] [tools] allowed = ["Read", "Write", "Edit", "Glob", "Grep", "Bash"] bash-patterns-allowed = ['^cargo( |$)', '^mkdir( |$)', '^rm -rf /tmp/'] [escalation] # Tightened vs edit-local: SSoT edits notify orchestrator on any unclear case policy = "orchestrator-notify" [taxonomy] kingdom = "role" mechanism = "compose" domain = "agent" layer = "agent-substrate" stage = "design-time" stability = "stable" language = "toml" [lineage] creator = "ag-orchestrator-human" created = "2026-04-23"