register-on-dashclaw
GitHub指导如何将AI代理注册到DashClaw平台,包括通过API或SDK进行注册、配置心跳以保持在线状态、设置特定策略以及管理身份签名,确保代理在治理体系下正常运行。
Trigger Scenarios
Install
npx skills add ucsandman/DashClaw --skill register-on-dashclaw -g -y
SKILL.md
Frontmatter
{
"name": "register-on-dashclaw",
"license": "MIT",
"metadata": {
"author": "ucsandman",
"version": "1.0.0",
"category": "meta"
},
"description": "Register any agent (including this one) as a governed agent on a DashClaw instance"
}
Register on DashClaw
Register any AI agent as a governed entity on a DashClaw instance. This includes the meta act of registering this very agent on DashClaw.
Register an Agent
Via API
curl -X POST "$DASHCLAW_BASE_URL/api/agents" \
-H "x-api-key: $DASHCLAW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"agent_id": "my-agent",
"agent_name": "My Agent",
"description": "What this agent does",
"capabilities": ["deploy", "api_call", "file_write"]
}'
Via SDK
import { DashClaw } from 'dashclaw';
const claw = new DashClaw({
baseUrl: process.env.DASHCLAW_BASE_URL,
apiKey: process.env.DASHCLAW_API_KEY,
agentId: 'my-agent'
});
// Agent is auto-registered on first guard call or action creation
// Explicit registration is optional but recommended for metadata
Set Up Heartbeat
Heartbeats let DashClaw know your agent is alive. Missing heartbeats trigger the "Agent Silent" signal (>10 min).
// Single heartbeat
await claw.heartbeat({ status: 'online', metadata: { version: '1.0.0' } });
// Auto-heartbeat (v1 SDK)
import { DashClaw } from 'dashclaw/legacy';
const claw = new DashClaw({ baseUrl, apiKey, agentId: 'my-agent' });
claw.startHeartbeat({ interval: 60000 }); // Every 60 seconds
// Stop when shutting down
claw.stopHeartbeat();
# Python
claw.heartbeat(status="online", metadata={"version": "1.0.0"})
Configure Agent-Specific Policies
Scope guard policies to a specific agent:
curl -X POST "$DASHCLAW_BASE_URL/api/policies" \
-H "x-api-key: $DASHCLAW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "my-agent-deploy-gate",
"agent_id": "my-agent",
"type": "approval_gate",
"mode": "enforce",
"conditions": {
"action_types": ["deploy"],
"risk_score_min": 50
},
"action": "require_approval",
"reason": "All deploys by my-agent require approval"
}'
Agent Identity & Signatures
For production, register your agent's public key for action signing:
// V1 SDK — register identity
import { DashClaw } from 'dashclaw/legacy';
const claw = new DashClaw({ baseUrl, apiKey, agentId: 'my-agent' });
await claw.registerIdentity({
publicKeyPem: myPublicKey,
algorithm: 'Ed25519',
agentName: 'My Agent'
});
// Revoke an identity when agent is decommissioned
await claw.revokeIdentity('my-agent');
Signature enforcement is runtime-toggleable from /settings?tab=identity. When enabled, all actions must be signed with the registered key.
Closed Enrollment Mode
If the DashClaw instance has DASHCLAW_CLOSED_ENROLLMENT=true, agents must be pre-registered before they can call guard or create actions. Register first, then instrument.
The Meta Moment: Register This Agent on DashClaw
This agent — dashclaw-agent — can be registered on DashClaw as a governed agent. Here's how:
1. Set Up Environment
export DASHCLAW_BASE_URL=http://localhost:3000
export DASHCLAW_API_KEY=your-api-key
export DASHCLAW_AGENT_ID=dashclaw-agent
2. Register
curl -X POST "$DASHCLAW_BASE_URL/api/agents" \
-H "x-api-key: $DASHCLAW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"agent_id": "dashclaw-agent",
"agent_name": "DashClaw Agent",
"description": "The definitive DashClaw expert. Helps developers integrate, configure, troubleshoot, and build DashClaw. Governs itself on DashClaw.",
"capabilities": ["sdk-integration", "policy-creation", "troubleshooting", "codebase-contribution", "compliance", "drift-detection"]
}'
3. Create Self-Governance Policies
# The agent that governs agents should govern itself
curl -X POST "$DASHCLAW_BASE_URL/api/policies" \
-H "x-api-key: $DASHCLAW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "dashclaw-agent-self-governance",
"agent_id": "dashclaw-agent",
"type": "risk_threshold",
"mode": "enforce",
"conditions": { "risk_score_min": 70 },
"action": "require_approval",
"reason": "DashClaw agent practices what it preaches — high-risk actions require approval"
}'
4. Install Claude Code Hooks
If running this agent in Claude Code, install the pretool/posttool hooks (see setup-dashclaw skill) so every tool call is governed by DashClaw.
5. Start Heartbeat
const claw = new DashClaw({
baseUrl: process.env.DASHCLAW_BASE_URL,
apiKey: process.env.DASHCLAW_API_KEY,
agentId: 'dashclaw-agent'
});
// Report presence
await claw.heartbeat({ status: 'online', metadata: {
version: '1.0.0',
type: 'gitagent',
skills: 8,
meta: 'I govern myself on the platform I help build'
}});
An agent that governs agents, governed by the platform it represents. That's DashClaw.
Version History
- dc89c19 Current 2026-07-25 11:01


