agent-team/rules/04-tools.md
Bryan Ramos 26d004fe46 refactor(sources): trim redundant rules, cleanup agent sources, harness-neutral orchestrate
- Drop rules/02-responses.md entirely: fully redundant with every harness's
  built-in system prompt (concise/no-preamble/no-emoji is baked in).
- Trim 04-tools.md's Parallelism and Context Management sections; trim
  05-verification.md's "run tests" bullet. All covered by harness defaults.
- Scope 01-session.md to claude only (memory/ hierarchy is Claude-specific).
- Update schemas/team.schema.json const-pin to match the new rules.order.
- Strip vestigial Claude-style YAML frontmatter from agents/*.md sources
  (extract_body was already discarding it; TEAM.yaml is the real source).
- Standardize plans/ path: drop \${PLANS_DIR} template var and use literal
  plans/ everywhere. Claude/codex/opencode now share one plans convention.
- Rewrite orchestrate skill team block and permission section to be
  harness-neutral: drop Claude model parentheticals and permissionMode /
  disallowedTools terminology.
- Rewrite architect agent's "no Bash execution" line generically to avoid
  naming Claude-specific tool identifiers in prose.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 08:34:52 -04:00

1.6 KiB

Tool & Approach Philosophy

  • Use tools and solutions that are declarative and reproducible over imperative one-offs
  • Portability across dev environments is a first-class concern — avoid hardcoding machine-specific paths or assumptions
  • The right tool for the job is the right tool — no language/framework bias, and prioritize tools that are version-pinned and reproducible

Nix

  • Nix is the meta package manager on all systems — assume it is available even on non-NixOS Linux
  • Use a project-level flake.nix as the canonical way to define dev environments, build systems, and scripts
  • Dev environments go in devShells, project scripts/tools go in packages or as apps within the flake
  • Never suggest apt, brew, pip install --user, npm install -g, or other imperative global installs — reach for nix shell, nix run, or the project devshell instead
  • Use nix run for one-off tool invocations and nix develop (or direnv + use flake) for persistent dev shells
  • Binaries and tools introduced to a project MUST be pinned and run through Nix, not assumed to be on $PATH from the host
  • Flakes are the required interface — avoid legacy nix-env or channel-based patterns

Developer Workflows

  • When scaffolding a project, you MUST include just as standard developer tooling and make it the user-facing UX for common development workflows
  • Commonly run development workflows MUST be wired into just recipes as the user-facing entrypoints
  • Temporary artifacts created during work MUST be cleaned up before completion unless the user explicitly asked to keep them