USAGE
Agent Generator - Usage Guide
Quick Start
The fastest way to generate all 66 agents:
# Run the quick start script ./quick-start.sh
This will:
- Install dependencies
- Build the project
- List all projects
- Generate all OSSA manifests
- Generate all MCP tool definitions
- Validate all manifests
- Show summary
Output will be in /tmp/agent-generator-output/
Manual Usage
Step 1: Install and Build
# Install dependencies npm install # Build TypeScript npm run build
Step 2: List Projects
See what will be generated:
# List all 66 projects npm run dev -- list-projects # List only 16 canonical agents npm run dev -- list-projects --canonical
Step 3: Generate Manifests
Generate OSSA v0.3.3 manifests for all agents:
npm run dev -- generate-agents \ --input /Volumes/AgentPlatform/wikis/blueflyio/separation-of-duties.md \ --output ./platform-agents \ --overwrite
This creates:
platform-agents/agent-name.yamlfor each project- OSSA v0.3.3 compliant manifests
- Proper separation of duties
- Full metadata and extensions
Step 4: Generate MCP Tools
Generate MCP tool definitions:
npm run dev -- generate-mcp-tools \ --input /Volumes/AgentPlatform/wikis/blueflyio/separation-of-duties.md \ --output ./mcp-tools \ --overwrite
This creates:
mcp-tools/agent-name-mcp.jsonfor each project- MCP 1.0 protocol compatible
- Tool schemas with input/output validation
- Security configurations
Step 5: Validate
Validate all generated manifests:
npm run dev -- validate-manifests --path ./platform-agents
This checks:
- OSSA v0.3.3 compliance
- Schema validation with Zod
- Required fields
- Proper formatting
Advanced Usage
Generate Single Agent
# Parse separation-of-duties.md npm run dev -- list-projects # Find your agent name, then manually extract and generate # (Full single-agent support coming in v0.2.0)
Custom Input File
Use a different separation-of-duties file:
npm run dev -- generate-agents \ --input /path/to/custom-separation-of-duties.md \ --output ./custom-agents
Custom Output Directory
npm run dev -- generate-agents \ --output /Volumes/AgentPlatform/repos/bare/blueflyio/platform-agents/agents \ --overwrite
Different Format
# YAML (default) npm run dev -- generate-agents --format yaml # JSON npm run dev -- generate-agents --format json
Expected Output
Directory Structure
After running generate-agents:
platform-agents/
├── platform-agents.yaml
├── agent-buildkit.yaml
├── agent-brain.yaml
├── agent-chat.yaml
├── agent-mesh.yaml
├── agent-protocol.yaml
├── agent-router.yaml
├── agent-studio.yaml
├── agent-tracer.yaml
├── agent-tailscale.yaml
├── agentic-flows.yaml
├── compliance-engine.yaml
├── api-schema-registry.yaml
├── workflow-engine.yaml
├── foundation-bridge.yaml
├── studio-ui.yaml
...
└── [64 more agents].yaml
After running generate-mcp-tools:
mcp-tools/
├── platform-agents-mcp.json
├── agent-buildkit-mcp.json
├── agent-brain-mcp.json
...
└── [64 more agents]-mcp.json
Sample Generated Manifest
Example: platform-agents.yaml
apiVersion: ossa/v0.4.9 kind: Agent metadata: name: platform-agents version: 1.0.0 description: OSSA agent definitions ONLY - NO services, NO utilities author: BlueFly.io Platform Team license: Apache-2.0 repository: https://gitlab.com/blueflyio/platform-agents/-/tree/main/agents/platform-agents tags: - core-agent-platform-projects - agent - ossa - bluefly - platform spec: role: | You are the platform-agents agent for the BlueFly.io platform. PURPOSE: OSSA agent definitions ONLY - NO services, NO utilities RESPONSIBILITIES: - Agent manifest creation and maintenance - OSSA specification compliance - Agent metadata and configuration - Agent versioning and lifecycle NOT RESPONSIBLE FOR: - Service implementation (goes in common_npm) - Business logic (goes in common_npm) - Utility functions (goes in common_npm) - CLI tools (goes in agent-buildkit) CRITICAL RULES: - Follow separation of duties strictly - Delegate tasks outside your scope to appropriate agents - Always validate inputs and provide structured outputs - Log all actions for audit compliance llm: provider: anthropic model: claude-sonnet-4 parameters: temperature: 0.7 max_tokens: 4096 tools: - type: function name: execute description: Execute platform-agents operations input_schema: type: object properties: action: type: string description: The action to perform parameters: type: object description: Action-specific parameters required: - action output_schema: type: object properties: success: type: boolean result: type: object error: type: string - type: function name: agent_manifest_creation_and_maintenance description: Agent manifest creation and maintenance - type: function name: ossa_specification_compliance description: OSSA specification compliance runtime: type: docker image: node:20-alpine dependencies: agents: - id: agent-buildkit version: ^1.0.0 - id: common-npm version: ^1.0.0 services: - type: database provider: postgresql - type: cache provider: redis - type: vector_db provider: qdrant extensions: skills_compatibility: enabled: true platforms: - langchain - crewai - autogen - gitlab-duo llms_txt: enabled: true agents_md: enabled: true
Sample MCP Tool
Example: platform-agents-mcp.json
{ "name": "platform-agents", "description": "OSSA agent definitions ONLY - NO services, NO utilities", "version": "0.4.9", "protocol": "mcp/1.0", "tools": [ { "name": "platform-agents_execute", "description": "Execute platform-agents operations", "inputSchema": { "type": "object", "properties": { "action": { "type": "string", "description": "The action to perform", "enum": [ "execute", "validate", "status", "cancel", "agent_manifest_creation", "ossa_specification_compliance" ] }, "parameters": { "type": "object", "description": "Action-specific parameters" } }, "required": ["action"] }, "outputSchema": { "type": "object", "properties": { "success": { "type": "boolean" }, "data": { "type": "object" }, "error": { "type": "string" } } } }, { "name": "platform-agents_status", "description": "Get status of platform-agents operations", "inputSchema": { "type": "object", "properties": { "task_id": { "type": "string", "description": "Task ID to check status" } } }, "outputSchema": { "type": "object", "properties": { "status": { "type": "string" }, "progress": { "type": "number" }, "result": { "type": "object" } } } } ], "security": { "authentication": { "type": "oauth2", "provider": "gitlab" }, "authorization": { "rbac": { "roles": ["admin", "user", "agent"] } } } }
Validation
The tool validates:
- Project parsing: Ensures all sections are correctly parsed
- Schema compliance: Zod validation against OSSA v0.3.3 spec
- Required fields: All mandatory fields present
- Format validation: YAML/JSON syntax
- Naming conventions: DNS-1123 compliant names
Validation Output
Validating OSSA manifests...
✓ platform-agents.yaml
✓ agent-buildkit.yaml
✓ agent-brain.yaml
✓ agent-mesh.yaml
...
Validation Summary:
Valid: 66
Invalid: 0
Troubleshooting
"config.json not found"
Problem: Tool can't find config.json
Solution:
# Check config exists ls -la /Volumes/AgentPlatform/repos/bare/blueflyio/config.json # Or specify custom path export CONFIG_PATH=/path/to/config.json
"Failed to parse separation-of-duties.md"
Problem: Markdown structure doesn't match expected format
Solution:
- Ensure file has proper headers (
###for project names) - Check
RESPONSIBLE FORandNOT RESPONSIBLE FORsections - Validate markdown syntax
"Invalid manifest generated"
Problem: Generated manifest fails validation
Solution:
- Check project has required fields (name, purpose, responsibilities)
- Review Zod error messages for specific issues
- Ensure responsibilities array is not empty
"Permission denied"
Problem: Can't write to output directory
Solution:
# Create directory with proper permissions mkdir -p /path/to/output chmod 755 /path/to/output
Integration with Platform-Agents
Once manifests are generated and validated:
-
Review Generated Files
ls -la ./platform-agents/ -
Copy to Platform-Agents Repo
cp ./platform-agents/*.yaml \ /Volumes/AgentPlatform/repos/bare/blueflyio/platform-agents/agents/ -
Create Worktree and Commit
# Using buildkit buildkit worktree create 123 # Your issue number # Commit changes git add agents/*.yaml git commit -m "feat: generate all 66 OSSA agent manifests Auto-generated from separation-of-duties.md using agent-generator tool - OSSA v0.3.3 compliant - Full separation of duties - MCP tool definitions included Closes #123" git push
Next Steps
After generating manifests:
- Review each manifest for accuracy
- Customize LLM parameters if needed
- Add agent-specific tools
- Update repository references
- Deploy to agent-mesh
- Test with GitLab Duo
- Monitor in production
Support
For issues or questions:
- GitLab Issues: https://gitlab.com/blueflyio/agent-platform/technical-docs/-/issues
- Email: thomas@bluefly.io