agent-personas-agents

Configures personas, named agents, and delegation for @adonis-agora/agent in AdonisJS.

1|Updated Jul 7, 2026
One-click install
npx skills add https://github.com/DavideCarvalho/adonis-agora-agent --skill agent-personas-agents-davidecarvalho
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: agent-personas-agents
Source: https://github.com/DavideCarvalho/adonis-agora-agent/tree/main/packages/adonis/skills/agent-personas-agents
Command: npx skills add https://github.com/DavideCarvalho/adonis-agora-agent --skill agent-personas-agents-davidecarvalho

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? A single default agent cannot adapt its behavior per request or split work across specialists. This Skill shows how to reshape one agent per request with personas, build multi-agent teams with named agents and delegation, and control runaway loops and human approvals in @adonis-agora/agent. ## Core Features & Use Cases - Personas per request: Define personas with their own systemPrompt (string or PromptBuilder) and allowedTools, let callers pick one via the chat endpoint, and render a picker from the personas catalog route. - Multi-agent delegation: Declare delegatesTo edges that auto-register ask_<target> agent tools, gated by roles or authz abilities, so an orchestrator hands work to specialist agents. - HITL approvals and step budgets: Approve or reject paused action tools over HTTP scoped to a (runId, toolCallId) pair, and cap model-tool iterations per agent with maxSteps. - Use Case: Build a store assistant where a shopper persona only reads orders, a support persona can issue refunds with approval, and an orchestrator delegates research and billing questions to specialist agents. ## Quick Start Configure personas and a delegating orchestrator with specialist agents in config/agent.ts for my AdonisJS agent.

Frequently Asked Questions about agent-personas-agents

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add personas to an AdonisJS agent?▼

Define a personas array on defaultAgent in config/agent.ts, each with an id, label, systemPrompt, and optional allowedTools. Callers select one via the persona field of POST /agent/chat, and it pins to the thread.

How do I make one agent delegate to another agent?▼

Add delegatesTo edges on the orchestrator naming target agents defined in the agents array. Each edge auto-registers an ask_<target> tool whose input is { task }; the loop runs the target and feeds its answer back.

Why is my delegation to a specialist agent being denied?▼

A bare-string delegatesTo edge declares no roles or ability, so it is ADMIN-only under DefaultToolAuthorizer or denied under the authz adapter. Declare the edge as an object with roles or an ability, and check the tool-call feed for the recorded failed call.

How do I approve a paused action tool call?▼

POST the runId and toolCallId to /agent/tool-call/approve, or to /agent/tool-call/reject with a reason. For delegated sub-agents, use the runId from the approval stream frame, since the parked run is the child's, not the orchestrator's.

Can a persona systemPrompt use dynamic context?▼

Yes, a persona systemPrompt can be a PromptBuilder receiving PromptContext with actor, persona, pageContext, and basePrompt. Keep it deterministic, since wall-clock time or randomness breaks replay under the durable runner.

How do I limit agent loop iterations?▼

Set maxSteps on an AgentDefinition to bound model-tool iterations per turn; the default is 8. Give shallow specialists a smaller budget than the orchestrator to cap runaway loops.