Tools and Business Capabilities Development SOP
Prerequisites
Read the module overview, then confirm the business owner, inputs, outputs, failure conditions, and permission boundary.
Procedure
- Define the input JSON Schema,
effect.operations,effect.reversible, and idempotency strategy. Useexternalandfalsewhen uncertain. - Implement deterministic code instead of hiding rules in prompts.
- Cover success, invalid input, dependency failure, and repeated calls.
- Declare non-standard path or URL fields with
pathFieldsorurlFields, confirm permission and real recovery behavior for writes, and reject names that collide with built-in tools. - Use command and argument arrays for subprocesses, with timeout, output limit, cancellation signal, and a minimal environment. Treat an explicit
envas authoritative; never merge host secrets into it or let the tool execution context replace it. - Use only fixed
GitAdapterreads for Git evidence. Stop and request separate authorization before mutating Git state. - Bound file input, output, and complexity before diff calculation, and reject paths outside the workspace or through escaping links.
- Verify in Linux CI that bash cannot write outside the workspace or access the network; keep execution sequential so shared sandbox cleanup cannot race.
- Verify on Windows that constrained modes reject the host shell and that execution requires all three explicitly open conditions. Cover Git Bash, the PowerShell fallback, and an explicit minimal environment.
- Run the listed module tests and
npm run check:modules. - Preserve trace, evaluation, and owner-approval evidence; do not publish without explicit authorization.
Stop conditions
Stop for unconfirmed business rules, non-reversible side effects, access outside the workspace, unavailable real credentials, or failed security gates. Ask the owner instead of expanding scope.