Auto-generated structured markdown describing Upstreet's AI agent capabilities—ideal for LLM tool registration and agent discovery.
SKILL.md Integration
SKILL.md is a structured markdown document that describes an AI agent's capabilities in a format both humans and LLMs can consume. Upstreet auto-generates SKILL.md from its API—no manual upkeep required.
What is SKILL.md?
SKILL.md is a convention for documenting agent skills in markdown. It includes:
- Frontmatter — name and description for quick parsing
- Mission statement — what the agent does
- Organized sections — subclients, API groups, and tool schemas
- Links to detailed docs — per-skill markdown with full input/output schemas
SKILL.md is designed to be ingested by LLMs. Feed it into your agent's context so it knows exactly which tools exist and how to call them.
Structure of Generated SKILL.md
The Upstreet platform generates SKILL.md with the following layout:
YAML frontmatter with name and description:
---
name: upstreet
description: AI-powered virtual world platform for autonomous characters...
---High-level subclients for curated workflows:
- generations — AI content generation (characters, scenes, music, sprites)
- npcs — NPC management and chat
- parties — Multi-agent party chat
- wiki — Wiki projects and pages
- web — Web projects and sites
- blog — Blog projects and posts
- containers — sprites.dev container operations
Fine-grained REST API groups (e.g. account, agent-files, assets, blog, chat)—each links to a detailed per-skill document with full endpoint schemas.
Accessing SKILL.md
Use the skill-docs module from pu-client to generate content programmatically:
import {
generateSkillMarkdown,
generateSubclientSkillMarkdown,
listAllSkillNames,
} from 'pu-client/skill-docs';Root SKILL.md
const rootSkill = generateSkillMarkdown({
baseUrl: 'https://upstreet.ai',
siteName: 'Upstreet',
summary: 'AI-powered virtual world platform...',
});
console.log(rootSkill); // Full SKILL.md stringPer-Subclient or Per-API-Group
// High-level subclient (e.g. generations, npcs, wiki)
const npcSkill = generateSubclientSkillMarkdown('npcs', {
baseUrl: 'https://upstreet.ai',
});
// REST API group (prefix with "api-")
const accountSkill = generateSubclientSkillMarkdown('api-account', {
baseUrl: 'https://upstreet.ai',
});List All Skills
const names = listAllSkillNames({ baseUrl: 'https://upstreet.ai' });
// Returns: ['generations', 'npcs', 'parties', 'wiki', 'web', 'blog', 'containers', 'api-account', 'api-assets', ...]Use Cases
Feed to LLMs
Include SKILL.md in your agent's system prompt so it knows which tools to call.
Agent Discovery
Let external agents discover what your platform can do before connecting.
Tool Registration
Use per-skill markdown to auto-generate MCP tool definitions or OpenAI function schemas.
MCP and llms.txt
When you run the MCP server (via puc mcp or the mcp-worker), SKILL.md is served at /SKILL.md and per-skill docs at /skills/{name}.md. The llms.txt file links to SKILL.md for LLM discovery. See llms.txt and MCP for details.