Ploinky Agent Skills

Ploinky Agent Skills is a dynamic coordination subsystem that enables orchestrator skills to discover and call remote Ploinky agents through the router. It does not participate in filesystem skill discovery and has no descriptor file type.

Orchestrator-Driven Discovery

When an orchestrator skill (oskill.md) includes a ## Allowed Agents section, the OrchestratorSkillsSubsystem instantiates PloinkyAgentSkillsSubsystem on demand. The subsystem queries the Ploinky router's /agent-card endpoint to retrieve metadata for all available agents, then wraps each declared agent as a callable tool within the agentic session.

Agent Tool Execution

Each agent tool receives plain text from the orchestrator session, constructs an OpenAI-compatible payload, and sends it through AgentHttpClient.chatCompletions(). The response text is extracted and returned to the session. This means agents are called through the same OpenAI-compatible interface that all Ploinky agents expose, regardless of their underlying LLM provider.

Agent tools are merged into the session's toolbelt alongside local skill tools, so the LLM can freely choose between calling a local skill or a remote agent at each step.

AgentHttpClient lives at PloinkyAgentSkillsSubsystem/AgentHttpClient.mjs within the achillesAgentLib package, so it is available inside agent containers without depending on external paths.

Descriptor Section

An orchestrator declares remote agents through the ## Allowed Agents section (aliases: allowed-agents, agents, agent-allowlist):

## Allowed Agents

- openaiAgent
- researchAgent
- claudeAgent

The subsystem derives each tool's description from the agent-card metadata (summary, tags, usage guidance, etc.), so the orchestrator's LLM can make informed decisions about which agent to call.