Advanced Agent Configuration
This guide covers advanced agent configuration scenarios. For the basic setup walkthrough, see Getting Started: Agent Setup.
Multi-Profile Workflows
Section titled “Multi-Profile Workflows”Operators can create multiple profiles — one per work context — and switch between them instantly.
# List profilesedgeplane profile list
# Switch active profileedgeplane profile activate research
# Each profile carries its own:# - Tool and integration settings# - Mission context and permissions# - Instruction files for the agent# - Governance postureProfile files live in ~/.edgeplane/profiles/<name>/ and are synced from the server on activation.
CI / Headless Environments
Section titled “CI / Headless Environments”For CI pipelines that need to validate the environment without launching an agent:
# Validate env and auth without launchingedgeplane run codex --preflight-only
# Or for other agentsedgeplane launch gemini --preflight-onlyVerify readiness before running an agent:
edgeplane auth whoamiedgeplane health --jsonFor CI, use a service account token (mcs_sa_*) rather than an interactive session token:
export EP_BASE_URL="https://edgeplane.example.com"edgeplane auth login --service-account <sa-token>edgeplane run codex doctor --jsonService account tokens are created via the API and do not expire on the 8h session TTL.
Custom ACP Agents
Section titled “Custom ACP Agents”Any agent that implements the ACP protocol can connect to EdgePlane.
Generate the config:
edgeplane launch custom \ --agent-binary /path/to/your-agent \ --mission-id <id> \ --preflight-only # validate firstManual config (~/.edgeplane/instances/<id>/edgeplane/config/custom.acp.json):
{ "ep_base_url": "https://edgeplane.example.com", "domain_id": "<id>", "mission_id": "<id>", "mcp_servers": { "edgeplane": { "command": "edgeplane", "args": ["serve"], "env": { "EP_BASE_URL": "https://edgeplane.example.com" } } }}Session tokens are injected at exec time — never embed them in config files.
Skill Sync
Section titled “Skill Sync”Resolve and materialize the effective skill set for a domain/mission before launching agents:
edgeplane data sync status --domain-id <id>edgeplane data sync status --domain-id <id> --mission-id <id>Skills are versioned capability bundles — code, tools, and configuration an agent should have available. Skill sync ensures the agent’s local state matches what’s published for the mission.
Daemon Management
Section titled “Daemon Management”edgeplaned manages agent subprocess lifecycle. Most of the time you don’t interact with it directly, but useful commands:
# Check daemon statusedgeplaned version
# Retrieve a secret from inside an agent subprocessedgeplaned get-secret MY_API_KEYSocket paths (~/.edgeplane/edgeplaned/):
mgmt.sock— JSON-RPC managementsecrets.sock— secrets broker (agents only)edgeplaned.sock— PTY attach
Agent Config Locations
Section titled “Agent Config Locations”| Agent | Config path |
|---|---|
| Gemini CLI | ~/.edgeplane/instances/<id>/home/.gemini/settings.json |
| OpenClaw | ~/.edgeplane/instances/<id>/edgeplane/config/openclaw.acp.json |
| Custom ACP | ~/.edgeplane/instances/<id>/edgeplane/config/custom.acp.json |
Pass --legacy-global-config to write config to global agent paths (~/.gemini, etc.) for compatibility with tools that only read from a fixed location.
Fleet-Level Agent Setup
Section titled “Fleet-Level Agent Setup”For running multiple concurrent agents across missions:
- Register agents explicitly for fleet visibility:
# Via MCP toolregister_agent( name = "my-agent", capabilities = "code-editing,research", metadata = '{"runtime":"claude-code","node_id":"my-host"}')- Update status on startup:
update_agent_status(agent_id = <id>, status = "online")- Anchor to a home domain:
edgeplane agent update --agent-id <id> --home-domain-id <domain-id>Troubleshooting
Section titled “Troubleshooting”| Symptom | Check |
|---|---|
MCP startup incomplete (failed: edgeplane) | edgeplane auth whoami — auth must succeed before launch |
| Token written to config file | Session tokens (mcs_*) are never written to disk — if you see a token in a config file, it’s a static token |
| Agent can’t reach the server | edgeplane health --json — verify EP_BASE_URL is set correctly |
connection refused on MCP tools | Ensure edgeplane serve can start — check EP_BASE_URL and that ~/.edgeplane/session.json exists and is not expired (edgeplane auth whoami) |
See Also
Section titled “See Also”- Getting Started: Agent Setup — basic setup
- Reference: CLI — full command surface
- Reference: edgeplaned Daemon — daemon internals and secrets brokering