From truefoundry-gateway
Manages TrueFoundry Agent Registry: lists, creates, updates, deletes AI agents backed by prompts with collaborator access and sample inputs.
npx claudepluginhub truefoundry/tfy-gateway-skills --plugin truefoundry-gatewayThis skill is limited to using the following tools:
> Routing note: For ambiguous user intents, use the shared clarification templates in [references/intent-clarification.md](references/intent-clarification.md).
references/api-endpoints.mdreferences/cli-fallback.mdreferences/cluster-discovery.mdreferences/container-versions.mdreferences/gpu-reference.mdreferences/health-probes.mdreferences/intent-clarification.mdreferences/manifest-defaults.mdreferences/manifest-schema.mdreferences/prerequisites.mdreferences/resource-estimation.mdreferences/rest-api-manifest.mdreferences/tfy-api-setup.mdscripts/tfy-api.shscripts/tfy-version.shManages AI agent lifecycle with AI Maestro CLI: create, list, delete, rename, hibernate/wake, plugin install, export. For agent operations in Claude Code.
Discovers and lazy-loads Claude Code agents using search_agents and get_agent Python scripts, cutting context usage by 95%. Use for agent queries, specialized tasks, or complex workflows.
Manages agent fleets via CRUD (create, command, monitor, delete) and lifecycle patterns. For multi-agent systems, resource cleanup, and state tracking with Claude Agent SDK.
Share bugs, ideas, or general feedback.
Routing note: For ambiguous user intents, use the shared clarification templates in references/intent-clarification.md.
List, create, update, and delete AI agents in the TrueFoundry Agent Registry.
Manage AI agents in the TrueFoundry Agent Registry — list agents, inspect agent details, create or update agent definitions, configure collaborator access, or delete agents.
prompts skillai-gateway skillaccess-control skillRun the status skill first to verify TFY_BASE_URL and TFY_API_KEY are set and valid.
When using direct API, set TFY_API_SH to the full path of this skill's scripts/tfy-api.sh. See references/tfy-api-setup.md for paths per agent.
Note: There is no CLI support for agents. Use the Direct API method for all operations.
tfy_agents_list()
tfy_agents_list(agent_id="AGENT_ID") # get a single agent by ID
TFY_API_SH=~/.claude/skills/truefoundry-agents/scripts/tfy-api.sh
# List all agents
$TFY_API_SH GET /api/svc/v1/agents
# Get a single agent by ID
$TFY_API_SH GET /api/svc/v1/agents/AGENT_ID
Agents:
| Name | ID | FQN | Latest Version | Created By | Updated At |
|-----------------|----------|------------------------------|----------------|------------------|-------------|
| my-agent | ag-abc | tenant:user:project:my-agent | 3 | user@example.com | 2026-03-15 |
| classify-docs | ag-def | tenant:user:project:classify | 1 | user@example.com | 2026-03-20 |
This is an upsert operation: creates a new agent if it doesn't exist, or updates it if it does.
Prerequisite: Agents require a
prompt_version_fqnas their source. Use thepromptsskill to list prompts and find the correct FQN before creating an agent.
tfy_agents_create(payload={"manifest": {"name": "my-agent", "type": "agent", "description": "What this agent does", "source": {"type": "prompt", "prompt_version_fqn": "chat_prompt:tenant/user/project/name:version"}}})
Note: Requires human approval (HITL) via tool call.
$TFY_API_SH PUT /api/svc/v1/agents '{
"manifest": {
"name": "my-agent",
"type": "agent",
"description": "What this agent does",
"source": {
"type": "prompt",
"prompt_version_fqn": "chat_prompt:tenant/user/project/name:version"
},
"collaborators": [
{"role_id": "agent-manager", "subject": "user:email@example.com"},
{"role_id": "agent-access", "subject": "team:everyone"}
],
"sample_inputs": [
{"text": "Example input for the agent"}
]
}
}'
| Field | Required | Description |
|---|---|---|
name | Yes | Unique agent name |
type | Yes | Must be "agent" |
description | No | Human-readable description of what the agent does |
source.type | Yes | Source type, currently only "prompt" is supported |
source.prompt_version_fqn | Yes | Fully qualified name of the prompt version backing this agent |
collaborators | No | List of access grants (see Role IDs below) |
sample_inputs | No | Example inputs shown in the agent UI |
| Role ID | Permission |
|---|---|
agent-manager | Can edit and delete the agent |
agent-access | Can use and invoke the agent |
Subject format: user:email@example.com or team:team-name.
Ask for confirmation before deleting — this is irreversible.
tfy_agents_delete(id="AGENT_ID")
Note: Requires human approval (HITL) via tool call.
$TFY_API_SH DELETE /api/svc/v1/agents/AGENT_ID
<success_criteria>
</success_criteria>
status skill to verify credentials before managing agentsprompt_version_fqn as their source — use prompts skill to list or create prompts firstaccess-control skill to manage broader role assignments beyond per-agent collaborators| Method | Endpoint | Description |
|---|---|---|
GET | /api/svc/v1/agents | List all agents |
GET | /api/svc/v1/agents/{id} | Get a single agent |
PUT | /api/svc/v1/agents | Create or update an agent |
DELETE | /api/svc/v1/agents/{id} | Delete an agent |
Agent ID not found. List agents first to find the correct ID.
The prompt_version_fqn is invalid or the prompt version does not exist.
Use the prompts skill to list available prompts and their version FQNs.
Cannot manage agents. Check your API key permissions.
Invalid collaborator subject format. Use "user:email@example.com" or "team:team-name".
An agent with this name already exists. The PUT endpoint will update the existing agent.
If you want a new agent, use a different name.
Agent manifest requires at minimum: name, type ("agent"), and source with prompt_version_fqn.