[
{
"name": "delegate_task",
"description": "Delegate a task to a specialized sub-agent within the Network-AI swarm. The swarm uses a shared blackboard for coordination. Use this to route work to agents like data_analyst, strategy_advisor, or risk_assessor.",
"input_schema": {
"type": "object",
"properties": {
"targetAgent": {
"type": "string",
"description": "The identifier of the target agent to receive the task (e.g. data_analyst, strategy_advisor, risk_assessor)"
},
"taskPayload": {
"type": "object",
"description": "The task context, instructions, and any required data"
},
"priority": {
"type": "string",
"enum": ["low", "normal", "high", "critical"],
"description": "Task priority level for queue ordering. Defaults to normal."
},
"timeout": {
"type": "number",
"description": "Maximum execution time in milliseconds. Defaults to 30000."
},
"requiresAuth": {
"type": "boolean",
"description": "Whether this task requires AuthGuardian permission grant before execution."
}
},
"required": ["targetAgent", "taskPayload"]
}
},
{
"name": "query_swarm_state",
"description": "Query the current state of the agent swarm — active tasks, blackboard contents, agent availability, and permission grants.",
"input_schema": {
"type": "object",
"properties": {
"scope": {
"type": "string",
"enum": ["all", "agents", "tasks", "blackboard", "permissions"],
"description": "The scope of state information to retrieve. Defaults to all."
},
"agentFilter": {
"type": "array",
"items": { "type": "string" },
"description": "Optional list of agent IDs to filter results"
},
"includeHistory": {
"type": "boolean",
"description": "Include historical task execution data. Defaults to false."
}
}
}
},
{
"name": "spawn_parallel_agents",
"description": "Spawn multiple sub-agents in parallel for complex task decomposition. Results are combined using a synthesis strategy.",
"input_schema": {
"type": "object",
"properties": {
"tasks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"agentType": { "type": "string" },
"taskPayload": { "type": "object" }
},
"required": ["agentType", "taskPayload"]
},
"description": "Array of parallel tasks to execute simultaneously"
},
"synthesisStrategy": {
"type": "string",
"enum": ["merge", "vote", "chain", "first-success"],
"description": "How to combine results from parallel agents. Defaults to merge."
}
},
"required": ["tasks"]
}
},
{
"name": "request_permission",
"description": "Request permission from AuthGuardian before accessing a protected resource type. Always call this before DATABASE, PAYMENTS, EMAIL, or FILE_EXPORT operations.",
"input_schema": {
"type": "object",
"properties": {
"resourceType": {
"type": "string",
"enum": ["DATABASE", "PAYMENTS", "EMAIL", "FILE_EXPORT"],
"description": "The type of protected resource being requested"
},
"justification": {
"type": "string",
"description": "Clear reason for requesting access — must be specific to the current task"
},
"scope": {
"type": "string",
"description": "Specific scope of access needed (e.g. read:invoices, read:revenue)"
}
},
"required": ["resourceType", "justification"]
}
},
{
"name": "update_blackboard",
"description": "Write or update an entry on the shared blackboard for cross-agent coordination. The blackboard persists state between agents.",
"input_schema": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The blackboard entry key (e.g. task:001:data_analyst)"
},
"value": {
"description": "The data to store — can be any JSON-serializable value"
},
"ttl": {
"type": "number",
"description": "Time-to-live in seconds. Entry expires and returns null after this duration."
}
},
"required": ["key", "value"]
}
},
{
"name": "inject_context",
"description": "Read the persistent project context (Layer 3 memory) and return a formatted markdown block for injection into an agent system prompt. Contains goals, tech stack, architecture decisions, milestones, and banned approaches that persist across all sessions.",
"input_schema": {
"type": "object",
"properties": {}
}
},
{
"name": "update_context",
"description": "Persist a decision, milestone, stack entry, goal, or banned approach to the project context file (Layer 3 memory). Use this to record information that every agent in every future session should know.",
"input_schema": {
"type": "object",
"properties": {
"section": {
"type": "string",
"enum": ["decisions", "milestones", "stack", "goals", "banned", "project"],
"description": "The context section to update"
},
"add": {
"description": "Item to append — JSON object for decisions/milestones, plain string for goals/banned"
},
"set": {
"type": "object",
"description": "Key-value pairs to merge (use for stack and project sections)"
},
"complete": {
"type": "string",
"description": "Milestone name to mark as completed (milestones section only)"
}
},
"required": ["section"]
}
},
{
"name": "run_qa_harness",
"description": "Run a batch of blackboard entries through the QA quality gate and return aggregate results including pass rate, contradictions between agents, and a regression snapshot.",
"input_schema": {
"type": "object",
"properties": {
"scenarios": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "description": "Unique scenario identifier" },
"key": { "type": "string", "description": "Blackboard key" },
"value": { "description": "The value to gate — any JSON-serializable data" },
"sourceAgent": { "type": "string", "description": "Agent that produced the value" },
"minScore": { "type": "number", "description": "Per-scenario quality threshold override (0-1)" }
},
"required": ["id", "key", "value", "sourceAgent"]
},
"description": "Array of scenarios to run through quality gates"
},
"qualityThreshold": {
"type": "number",
"description": "Global minimum quality score (0-1). Defaults to 0.7."
}
},
"required": ["scenarios"]
}
}
]