Summary
Add security-scoped credential management so each agent can have restricted permissions, rather than all agents sharing the same access level.
Current State
AgentConfig supports per-agent apiKey and baseURL — different agents can use different LLM providers
- But this is provider-level isolation, not security scoping — there's no restriction on which tools an agent can call, what system resources it can access, or what SharedMemory keys it can read/write
- A compromised or misbehaving agent has the same access as the coordinator
Community Feedback
u/Mooshux (r/LocalLLaMA):
"The orchestration pattern is interesting, but the credential handling is the part worth thinking hard about. If the coordinator passes its credentials down to subagents, a compromise of any subagent gives an attacker the same access as the coordinator. The safer pattern: each subagent gets a scoped token..."
Proposed Approach
- Tool allowlist per agent (already partially exists via
tools config — but not enforced as a security boundary)
- SharedMemory read/write scoping (e.g., agent can only read specific namespaces)
- Optional sandboxing for the
bash tool (restricted paths, no network, etc.)
- Credential injection pattern: coordinator passes minimal scoped credentials to subagents
Priority
P2 — Not urgent for local dev/CI use cases. Becomes critical for multi-tenant, untrusted-tool, or production deployment scenarios.
Summary
Add security-scoped credential management so each agent can have restricted permissions, rather than all agents sharing the same access level.
Current State
AgentConfigsupports per-agentapiKeyandbaseURL— different agents can use different LLM providersCommunity Feedback
Proposed Approach
toolsconfig — but not enforced as a security boundary)bashtool (restricted paths, no network, etc.)Priority
P2 — Not urgent for local dev/CI use cases. Becomes critical for multi-tenant, untrusted-tool, or production deployment scenarios.