@bluefly/openstandardagents 0.2.5-RC → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
- package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
- package/.github/workflows/dependabot-comment.yml +34 -0
- package/.github/workflows/pr-comment.yml +33 -0
- package/.husky/pre-commit +5 -0
- package/.kiro/config.json +21 -0
- package/.kiro/settings/mcp.json +61 -0
- package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
- package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
- package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
- package/.kiro/specs/{website-design-audit → website-brand-identity}/design.md +381 -0
- package/.kiro/specs/{website-design-audit → website-brand-identity}/requirements.md +88 -0
- package/.kiro/specs/website-brand-identity/tasks.md +981 -0
- package/CHANGELOG.md +23 -0
- package/README.md +12 -3
- package/bin/ossa-dev +42 -0
- package/bin/ossa-export +32 -0
- package/bin/ossa-generate +60 -0
- package/bin/ossa-health +40 -0
- package/bin/ossa-init +26 -0
- package/dist/repositories/schema.repository.d.ts.map +1 -1
- package/dist/repositories/schema.repository.js +15 -10
- package/dist/repositories/schema.repository.js.map +1 -1
- package/dist/services/github-sync/github-client.d.ts +14 -0
- package/dist/services/github-sync/github-client.d.ts.map +1 -0
- package/dist/services/github-sync/github-client.js +41 -0
- package/dist/services/github-sync/github-client.js.map +1 -0
- package/dist/services/github-sync/gitlab-client.d.ts +17 -0
- package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
- package/dist/services/github-sync/gitlab-client.js +42 -0
- package/dist/services/github-sync/gitlab-client.js.map +1 -0
- package/dist/services/github-sync/schemas.d.ts +46 -0
- package/dist/services/github-sync/schemas.d.ts.map +1 -0
- package/dist/services/github-sync/schemas.js +36 -0
- package/dist/services/github-sync/schemas.js.map +1 -0
- package/dist/services/github-sync/sync.service.d.ts +27 -0
- package/dist/services/github-sync/sync.service.d.ts.map +1 -0
- package/dist/services/github-sync/sync.service.js +99 -0
- package/dist/services/github-sync/sync.service.js.map +1 -0
- package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
- package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
- package/dist/services/runtime/claude/capability-mapper.js +245 -0
- package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
- package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
- package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
- package/dist/services/runtime/claude/claude-adapter.js +287 -0
- package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
- package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
- package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
- package/dist/services/runtime/claude/manifest-parser.js +169 -0
- package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
- package/dist/services/runtime/claude/types.d.ts +115 -0
- package/dist/services/runtime/claude/types.d.ts.map +1 -0
- package/dist/services/runtime/claude/types.js +6 -0
- package/dist/services/runtime/claude/types.js.map +1 -0
- package/dist/services/validation.service.d.ts.map +1 -1
- package/dist/services/validation.service.js +12 -1
- package/dist/services/validation.service.js.map +1 -1
- package/dist/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
- package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
- package/dist/spec/v0.2.6/README.md +72 -0
- package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
- package/dist/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
- package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
- package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
- package/dist/spec/v0.2.6-dev/README.md +75 -0
- package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/dist/spec/{v0.2.4/ossa-0.2.4-dev.schema.json → v0.2.6-dev/ossa-0.2.5.schema.json} +9 -9
- package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
- package/{spec/v0.2.4/ossa-0.2.4-dev.schema.json → dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json} +9 -9
- package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
- package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
- package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
- package/docs/brand-guide/01-brand-overview.md +37 -0
- package/docs/brand-guide/02-logo-usage.md +43 -0
- package/docs/brand-guide/03-color-palette.md +70 -0
- package/docs/brand-guide/04-typography.md +82 -0
- package/docs/brand-guide/05-voice-and-tone.md +108 -0
- package/docs/brand-guide/06-visual-elements.md +137 -0
- package/docs/brand-guide/07-application-examples.md +153 -0
- package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
- package/docs/brand-guide/OssaLogo/brand.af +0 -0
- package/docs/brand-guide/README.md +107 -0
- package/docs/comparison.md +315 -0
- package/docs/operations/automation-roadmap.md +245 -0
- package/docs/operations/github-sync-strategy.md +357 -0
- package/examples/anthropic/claude-assistant.ossa.json +5 -4
- package/examples/autogen/multi-agent.ossa.json +6 -4
- package/examples/crewai/research-team.ossa.json +14 -5
- package/examples/cursor/code-review-agent.ossa.json +21 -6
- package/examples/langchain/chain-agent.ossa.json +21 -5
- package/examples/langflow/workflow-agent.ossa.json +2 -3
- package/examples/langgraph/state-machine-agent.ossa.json +2 -3
- package/examples/llamaindex/rag-agent.ossa.json +2 -3
- package/examples/openai/multi-tool-agent.ossa.json +32 -9
- package/examples/openai/swarm-agent.ossa.json +18 -5
- package/examples/vercel/edge-agent.ossa.json +5 -4
- package/openapi/github-sync.yaml +115 -0
- package/package.json +25 -4
- package/scripts/README.md +103 -0
- package/scripts/auto-rebase-mrs.ts +106 -0
- package/scripts/batch-dependabot.sh +57 -0
- package/scripts/configure-gitlab-branch-protection.ts +95 -0
- package/scripts/create-issue-helper.ts +238 -0
- package/scripts/create-milestone-issue.ts +73 -0
- package/scripts/fix-schema-formats.js +82 -0
- package/scripts/generate-agents-catalog.ts +77 -0
- package/scripts/generate-api-docs.ts +218 -0
- package/scripts/generate-cli-docs.ts +410 -0
- package/scripts/generate-config-docs.ts +109 -0
- package/scripts/generate-errors-docs.ts +76 -0
- package/scripts/generate-examples-docs.ts +99 -0
- package/scripts/generate-schema-docs.ts +296 -0
- package/scripts/generate-types-docs.ts +48 -0
- package/scripts/lowercase-docs.ts +43 -0
- package/scripts/manage-milestone-mrs.ts +279 -0
- package/scripts/rebase-all-mrs.sh +75 -0
- package/scripts/sync-github-pr.sh +48 -0
- package/scripts/sync-version.js +40 -0
- package/scripts/sync-wiki.sh +50 -0
- package/scripts/validate-all.js +127 -0
- package/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
- package/spec/v0.2.6/CHANGELOG.md +401 -0
- package/spec/v0.2.6/README.md +72 -0
- package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
- package/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
- package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
- package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
- package/spec/v0.2.6-dev/README.md +75 -0
- package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
- package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
- package/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
- package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
- package/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +1696 -0
- package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
- package/spec/v0.2.7/core/agentgraph.md +324 -0
- package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
- package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +445 -0
- package/website/app/about/page.tsx +53 -44
- package/website/app/ecosystem/page.tsx +146 -111
- package/website/app/globals.scss +256 -21
- package/website/app/page.tsx +394 -182
- package/website/app/page.tsx.bak +679 -0
- package/website/app/page.tsx.bak2 +649 -0
- package/website/app/schema/page.tsx +3 -3
- package/website/app/specification/page.tsx +1 -1
- package/website/components/layout/Header.tsx +27 -23
- package/website/components/ui/Badge.tsx +82 -0
- package/website/components/ui/Button.tsx +116 -0
- package/website/components/ui/Card.tsx +167 -0
- package/website/components/ui/Checkbox.tsx +141 -0
- package/website/components/ui/Input.tsx +169 -0
- package/website/components/ui/Radio.tsx +141 -0
- package/website/components/ui/Select.tsx +182 -0
- package/website/components/ui/Tag.tsx +158 -0
- package/website/components/ui/Textarea.tsx +195 -0
- package/website/components/ui/index.ts +11 -0
- package/website/content/docs/{00-HOME.md → 00-home.md} +1 -1
- package/website/content/docs/agents/catalog.md +28 -0
- package/website/content/docs/{AIFlow-Framework-Integration-with-OSSA.md → aiflow-framework-integration-with-ossa.md} +2 -2
- package/website/content/docs/api-reference/index.md +38 -0
- package/website/content/docs/api-reference/ossa-core-api.md +634 -0
- package/website/content/docs/api-reference/ossa-registry-api.md +515 -0
- package/website/content/docs/api-reference/unified-agent-gateway.md +599 -0
- package/website/content/docs/cli-reference/index.md +111 -0
- package/website/content/docs/cli-reference/ossa-agents.md +70 -0
- package/website/content/docs/cli-reference/ossa-export.md +56 -0
- package/website/content/docs/cli-reference/ossa-generate.md +66 -0
- package/website/content/docs/cli-reference/ossa-gitlab-agent.md +57 -0
- package/website/content/docs/cli-reference/ossa-import.md +56 -0
- package/website/content/docs/cli-reference/ossa-init.md +57 -0
- package/website/content/docs/cli-reference/ossa-migrate.md +62 -0
- package/website/content/docs/cli-reference/ossa-run.md +66 -0
- package/website/content/docs/cli-reference/ossa-schema.md +57 -0
- package/website/content/docs/cli-reference/ossa-setup.md +57 -0
- package/website/content/docs/cli-reference/ossa-validate.md +66 -0
- package/website/content/docs/configuration/index.md +97 -0
- package/website/content/docs/deployment/github-mirroring.md +924 -0
- package/website/content/docs/documentation.md +100 -0
- package/website/content/docs/ecosystem/framework-support.md +551 -9
- package/website/content/docs/errors/index.md +10 -0
- package/website/content/docs/examples/{AIFlow-Framework-Integration-with-OSSA.md → aiflow-framework-integration-with-ossa.md} +2 -2
- package/website/content/docs/examples/catalog.md +300 -0
- package/website/content/docs/for-audiences/{Students-Researchers.md → students-researchers.md} +1 -1
- package/website/content/docs/getting-started/{Installation.md → installation.md} +1 -1
- package/website/content/docs/getting-started.md +1 -1
- package/website/content/docs/integrations/aiflow.md +2 -2
- package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +5 -5
- package/website/content/docs/migration-guides/crewai-to-ossa.md +3 -3
- package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +7 -7
- package/website/content/docs/migration-guides/langchain-to-ossa.md +4 -4
- package/website/content/docs/openapi-extensions/index.md +1 -1
- package/website/content/docs/ossa-compliant-badge.md +1 -1
- package/website/content/docs/pre-release/index.md +5 -5
- package/website/content/docs/releases/v0.2.6.md +99 -0
- package/website/content/docs/schema-reference/agent-capabilities.md +50 -0
- package/website/content/docs/schema-reference/agent-id.md +52 -0
- package/website/content/docs/schema-reference/agent-name.md +50 -0
- package/website/content/docs/schema-reference/agent-role.md +54 -0
- package/website/content/docs/schema-reference/agent-version.md +50 -0
- package/website/content/docs/schema-reference/index.md +26 -157
- package/website/content/docs/types-reference/index.md +105 -0
- package/website/content/docs/versioning.md +3 -3
- package/website/dev.sh +53 -0
- package/website/docker-compose.dev.yml +36 -0
- package/website/lib/version.ts +1 -1
- package/website/lib/versions.json +45 -20
- package/website/package.json +1 -1
- package/website/styles/_spacing.scss +453 -0
- package/website/styles/_tokens.scss +245 -0
- package/website/styles/_typography.scss +361 -0
- package/website/styles/_variables.scss +270 -19
- package/website/tailwind.config.ts +113 -79
- package/.kiro/specs/agent-buildkit-templates/design.md +0 -495
- package/.kiro/specs/agent-buildkit-templates/requirements.md +0 -165
- package/.kiro/specs/kiro-ide-supercharger/README.md +0 -202
- package/.kiro/specs/kiro-ide-supercharger/design.md +0 -1005
- package/.kiro/specs/kiro-ide-supercharger/requirements.md +0 -141
- package/.kiro/specs/kiro-ide-supercharger/tasks.md +0 -507
- package/docs/issue-19-completion-summary.md +0 -648
- package/docs/issue-19-validation.md +0 -351
- package/website/content/docs/Examples.md +0 -71
- package/website/content/docs/OpenAPI-Extensions.md +0 -934
- package/website/content/docs/core-concepts/Project-Structure.md +0 -348
- package/website/content/docs/examples/Migration-Guides.md +0 -214
- package/website/content/docs/for-audiences/Architects.md +0 -224
- package/website/content/docs/for-audiences/Developers.md +0 -220
- package/website/content/docs/for-audiences/Enterprises.md +0 -256
- package/website/content/docs/getting-started/5-Minute-Overview.md +0 -85
- package/website/content/docs/getting-started/First-Agent.md +0 -196
- package/website/content/docs/getting-started/Hello-World.md +0 -184
- package/website/content/docs/migration-guides/00-INDEX.md +0 -76
- package/website/content/docs/migration-guides/README.md +0 -133
- /package/dist/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
- /package/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
|
@@ -1,348 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: OSSA Project Structure
|
|
3
|
-
description: Understanding the .agents and .agents-workspace folders, and how OSSA organizes agent projects
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# OSSA Project Structure
|
|
7
|
-
|
|
8
|
-
Understanding how OSSA organizes your agent projects is essential for effective development. This guide explains the core folders and their purposes.
|
|
9
|
-
|
|
10
|
-
## Directory Structure Overview
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
my-ossa-project/
|
|
14
|
-
├── .agents/ # Agent definitions (version controlled)
|
|
15
|
-
│ ├── my-agent/
|
|
16
|
-
│ │ ├── manifest.json # Agent configuration
|
|
17
|
-
│ │ ├── prompts/ # Agent prompts
|
|
18
|
-
│ │ └── tools/ # Agent-specific tools
|
|
19
|
-
│ └── another-agent/
|
|
20
|
-
│ └── manifest.json
|
|
21
|
-
├── .agents-workspace/ # Agent runtime workspace (NOT version controlled)
|
|
22
|
-
│ ├── my-agent/
|
|
23
|
-
│ │ ├── context/ # Runtime context
|
|
24
|
-
│ │ ├── memory/ # Agent memory/state
|
|
25
|
-
│ │ └── logs/ # Execution logs
|
|
26
|
-
│ └── another-agent/
|
|
27
|
-
│ └── context/
|
|
28
|
-
├── examples/ # Example agents and workflows
|
|
29
|
-
└── ossa.yaml # Project configuration
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## `.agents/` - Agent Definitions
|
|
33
|
-
|
|
34
|
-
The `.agents/` directory contains your **agent definitions**. This folder **should be version controlled** (committed to git).
|
|
35
|
-
|
|
36
|
-
### Purpose
|
|
37
|
-
|
|
38
|
-
- **Declarative agent configuration**: Each agent is defined by a `manifest.json` file
|
|
39
|
-
- **Source of truth**: The canonical definition of what each agent does
|
|
40
|
-
- **Shareable**: Can be exported, migrated, and shared across teams
|
|
41
|
-
- **Platform-agnostic**: Works with any OSSA-compliant runtime
|
|
42
|
-
|
|
43
|
-
### Structure
|
|
44
|
-
|
|
45
|
-
Each agent gets its own subdirectory within `.agents/`:
|
|
46
|
-
|
|
47
|
-
```json
|
|
48
|
-
.agents/
|
|
49
|
-
└── customer-support-agent/
|
|
50
|
-
├── manifest.json # Required: Agent metadata and configuration
|
|
51
|
-
├── prompts/
|
|
52
|
-
│ ├── system.md # System prompt
|
|
53
|
-
│ ├── context.md # Context instructions
|
|
54
|
-
│ └── examples.md # Few-shot examples
|
|
55
|
-
├── tools/
|
|
56
|
-
│ ├── search.json # Tool definition
|
|
57
|
-
│ └── create-ticket.json # Tool definition
|
|
58
|
-
└── schema/
|
|
59
|
-
└── openapi.yaml # OpenAPI schema if using x-ossa extensions
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### manifest.json
|
|
63
|
-
|
|
64
|
-
The manifest is the core of each agent. It defines:
|
|
65
|
-
|
|
66
|
-
- **Agent metadata**: Name, description, version
|
|
67
|
-
- **Capabilities**: What the agent can do
|
|
68
|
-
- **Tools**: Which tools the agent has access to
|
|
69
|
-
- **Configuration**: Runtime settings and parameters
|
|
70
|
-
- **Taxonomy**: Agent classification (see below)
|
|
71
|
-
|
|
72
|
-
Example manifest:
|
|
73
|
-
|
|
74
|
-
```json
|
|
75
|
-
{
|
|
76
|
-
"name": "customer-support-agent",
|
|
77
|
-
"version": "1.0.0",
|
|
78
|
-
"description": "Handles customer support inquiries",
|
|
79
|
-
"taxonomy": {
|
|
80
|
-
"role": "worker",
|
|
81
|
-
"domain": "customer-service",
|
|
82
|
-
"capabilities": ["qa", "ticket-creation", "escalation"]
|
|
83
|
-
},
|
|
84
|
-
"tools": [
|
|
85
|
-
{
|
|
86
|
-
"name": "search_knowledge_base",
|
|
87
|
-
"type": "function",
|
|
88
|
-
"source": "./tools/search.json"
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
"name": "create_support_ticket",
|
|
92
|
-
"type": "function",
|
|
93
|
-
"source": "./tools/create-ticket.json"
|
|
94
|
-
}
|
|
95
|
-
],
|
|
96
|
-
"prompts": {
|
|
97
|
-
"system": "./prompts/system.md",
|
|
98
|
-
"context": "./prompts/context.md"
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
## `.agents-workspace/` - Agent Runtime Workspace
|
|
104
|
-
|
|
105
|
-
The `.agents-workspace/` directory is where agents **run and store runtime data**. This folder **should NOT be version controlled** (add to `.gitignore`).
|
|
106
|
-
|
|
107
|
-
### Purpose
|
|
108
|
-
|
|
109
|
-
- **Execution environment**: Where agents execute tasks
|
|
110
|
-
- **State management**: Agent memory, context, and session data
|
|
111
|
-
- **Logs and telemetry**: Runtime logs, metrics, and debugging info
|
|
112
|
-
- **Temporary artifacts**: Generated files, cached data, etc.
|
|
113
|
-
|
|
114
|
-
### Structure
|
|
115
|
-
|
|
116
|
-
Each agent gets a workspace directory that mirrors its `.agents/` structure:
|
|
117
|
-
|
|
118
|
-
```
|
|
119
|
-
.agents-workspace/
|
|
120
|
-
└── customer-support-agent/
|
|
121
|
-
├── context/
|
|
122
|
-
│ ├── session-abc123.json # Active session context
|
|
123
|
-
│ └── thread-xyz789.json # Conversation thread
|
|
124
|
-
├── memory/
|
|
125
|
-
│ ├── short-term.json # Recent context window
|
|
126
|
-
│ ├── long-term.db # Persistent memory (vector store)
|
|
127
|
-
│ └── preferences.json # Learned user preferences
|
|
128
|
-
├── logs/
|
|
129
|
-
│ ├── 2025-11-18.log # Daily logs
|
|
130
|
-
│ └── metrics.json # Performance metrics
|
|
131
|
-
└── artifacts/
|
|
132
|
-
├── generated-email.txt # Generated content
|
|
133
|
-
└── analysis-report.pdf # Work products
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### Why Separate from `.agents/`?
|
|
137
|
-
|
|
138
|
-
1. **Clean version control**: Don't pollute git with runtime data
|
|
139
|
-
2. **Security**: Keep sensitive runtime data (API keys, user data) out of version control
|
|
140
|
-
3. **Performance**: Large runtime files don't slow down git operations
|
|
141
|
-
4. **Reproducibility**: Agent definitions in `.agents/` can be reproduced anywhere, but runtime state is environment-specific
|
|
142
|
-
|
|
143
|
-
### `.gitignore` Recommendation
|
|
144
|
-
|
|
145
|
-
Always add `.agents-workspace/` to your `.gitignore`:
|
|
146
|
-
|
|
147
|
-
```gitignore
|
|
148
|
-
# OSSA runtime workspace (never commit this!)
|
|
149
|
-
.agents-workspace/
|
|
150
|
-
|
|
151
|
-
# Keep agent definitions (DO commit this)
|
|
152
|
-
# .agents/ # <-- NOT ignored, should be committed
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## Agent Taxonomy
|
|
156
|
-
|
|
157
|
-
OSSA uses a **taxonomy system** to classify and organize agents. This helps with:
|
|
158
|
-
|
|
159
|
-
- **Discovery**: Find agents by role, domain, or capability
|
|
160
|
-
- **Routing**: Direct tasks to appropriate agents
|
|
161
|
-
- **Orchestration**: Compose multi-agent workflows
|
|
162
|
-
- **Governance**: Apply policies based on agent classification
|
|
163
|
-
|
|
164
|
-
### Taxonomy Structure
|
|
165
|
-
|
|
166
|
-
```json
|
|
167
|
-
{
|
|
168
|
-
"taxonomy": {
|
|
169
|
-
"role": "worker | supervisor | coordinator | specialist",
|
|
170
|
-
"domain": "customer-service | data-analysis | content-creation | ...",
|
|
171
|
-
"capabilities": ["capability-1", "capability-2", "..."],
|
|
172
|
-
"tags": ["optional", "custom", "tags"]
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
### Taxonomy Fields
|
|
178
|
-
|
|
179
|
-
#### `role` (Required)
|
|
180
|
-
|
|
181
|
-
The agent's primary role in a system:
|
|
182
|
-
|
|
183
|
-
- **`worker`**: Executes specific tasks (e.g., customer support agent, data fetcher)
|
|
184
|
-
- **`supervisor`**: Manages and coordinates workers (e.g., team lead, orchestrator)
|
|
185
|
-
- **`coordinator`**: Routes tasks between agents (e.g., dispatcher, load balancer)
|
|
186
|
-
- **`specialist`**: Domain expert for complex tasks (e.g., legal advisor, data scientist)
|
|
187
|
-
|
|
188
|
-
#### `domain` (Required)
|
|
189
|
-
|
|
190
|
-
The business/functional domain:
|
|
191
|
-
|
|
192
|
-
- `customer-service`
|
|
193
|
-
- `data-analysis`
|
|
194
|
-
- `content-creation`
|
|
195
|
-
- `software-development`
|
|
196
|
-
- `compliance`
|
|
197
|
-
- `sales`
|
|
198
|
-
- (custom domains allowed)
|
|
199
|
-
|
|
200
|
-
#### `capabilities` (Optional but Recommended)
|
|
201
|
-
|
|
202
|
-
Specific capabilities the agent possesses:
|
|
203
|
-
|
|
204
|
-
```json
|
|
205
|
-
{
|
|
206
|
-
"capabilities": [
|
|
207
|
-
"natural-language-understanding",
|
|
208
|
-
"ticket-creation",
|
|
209
|
-
"escalation-routing",
|
|
210
|
-
"sentiment-analysis",
|
|
211
|
-
"multi-language-support"
|
|
212
|
-
]
|
|
213
|
-
}
|
|
214
|
-
```
|
|
215
|
-
|
|
216
|
-
#### `tags` (Optional)
|
|
217
|
-
|
|
218
|
-
Freeform tags for additional classification:
|
|
219
|
-
|
|
220
|
-
```json
|
|
221
|
-
{
|
|
222
|
-
"tags": ["production", "high-priority", "customer-facing", "v2"]
|
|
223
|
-
}
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
### Example Taxonomy Usage
|
|
227
|
-
|
|
228
|
-
**Worker Agent (Customer Support)**:
|
|
229
|
-
```json
|
|
230
|
-
{
|
|
231
|
-
"taxonomy": {
|
|
232
|
-
"role": "worker",
|
|
233
|
-
"domain": "customer-service",
|
|
234
|
-
"capabilities": ["qa", "ticket-creation", "escalation"],
|
|
235
|
-
"tags": ["tier-1-support", "email-only"]
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
```
|
|
239
|
-
|
|
240
|
-
**Supervisor Agent (Support Team Lead)**:
|
|
241
|
-
```json
|
|
242
|
-
{
|
|
243
|
-
"taxonomy": {
|
|
244
|
-
"role": "supervisor",
|
|
245
|
-
"domain": "customer-service",
|
|
246
|
-
"capabilities": ["task-assignment", "quality-review", "escalation-handling"],
|
|
247
|
-
"tags": ["tier-2-support", "manager"]
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
```
|
|
251
|
-
|
|
252
|
-
**Specialist Agent (Data Analyst)**:
|
|
253
|
-
```json
|
|
254
|
-
{
|
|
255
|
-
"taxonomy": {
|
|
256
|
-
"role": "specialist",
|
|
257
|
-
"domain": "data-analysis",
|
|
258
|
-
"capabilities": ["sql-queries", "data-visualization", "statistical-analysis"],
|
|
259
|
-
"tags": ["python", "pandas", "power-bi"]
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
```
|
|
263
|
-
|
|
264
|
-
### Using Taxonomy for Routing
|
|
265
|
-
|
|
266
|
-
Taxonomy enables intelligent routing in multi-agent systems:
|
|
267
|
-
|
|
268
|
-
```typescript
|
|
269
|
-
// Find all customer service workers
|
|
270
|
-
const supportAgents = await ossa.findAgents({
|
|
271
|
-
taxonomy: {
|
|
272
|
-
role: 'worker',
|
|
273
|
-
domain: 'customer-service'
|
|
274
|
-
}
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
// Find agents with specific capability
|
|
278
|
-
const escalationHandlers = await ossa.findAgents({
|
|
279
|
-
taxonomy: {
|
|
280
|
-
capabilities: ['escalation-handling']
|
|
281
|
-
}
|
|
282
|
-
});
|
|
283
|
-
|
|
284
|
-
// Route task to appropriate agent
|
|
285
|
-
const agent = await ossa.routeTask(task, {
|
|
286
|
-
requiredCapabilities: ['sql-queries', 'data-visualization']
|
|
287
|
-
});
|
|
288
|
-
```
|
|
289
|
-
|
|
290
|
-
## Project Initialization
|
|
291
|
-
|
|
292
|
-
When you run `osa init`, OSSA creates the proper structure:
|
|
293
|
-
|
|
294
|
-
```bash
|
|
295
|
-
$ osa init my-project
|
|
296
|
-
✅ Created .agents/ directory (version controlled)
|
|
297
|
-
✅ Created .agents-workspace/ directory (not version controlled)
|
|
298
|
-
✅ Created .gitignore with .agents-workspace/
|
|
299
|
-
✅ Created ossa.yaml project configuration
|
|
300
|
-
```
|
|
301
|
-
|
|
302
|
-
## Best Practices
|
|
303
|
-
|
|
304
|
-
### ✅ DO
|
|
305
|
-
|
|
306
|
-
- **Commit `.agents/`** to version control (git)
|
|
307
|
-
- **Ignore `.agents-workspace/`** in `.gitignore`
|
|
308
|
-
- **Use taxonomy** to classify all agents
|
|
309
|
-
- **Document agent roles** in manifest descriptions
|
|
310
|
-
- **Version your manifests** (semver recommended)
|
|
311
|
-
|
|
312
|
-
### ❌ DON'T
|
|
313
|
-
|
|
314
|
-
- **Don't commit `.agents-workspace/`** (contains runtime data, secrets, logs)
|
|
315
|
-
- **Don't hardcode secrets** in agent manifests (use environment variables)
|
|
316
|
-
- **Don't mix runtime state** with agent definitions
|
|
317
|
-
- **Don't skip taxonomy** (makes discovery and routing harder)
|
|
318
|
-
|
|
319
|
-
## Migration from Other Frameworks
|
|
320
|
-
|
|
321
|
-
When migrating from other frameworks (LangChain, CrewAI, etc.), use `osa migrate`:
|
|
322
|
-
|
|
323
|
-
```bash
|
|
324
|
-
# Migrate LangChain agents to OSSA structure
|
|
325
|
-
$ osa migrate --from langchain --input ./langchain-agents --output ./.agents
|
|
326
|
-
|
|
327
|
-
✅ Created .agents/ with migrated agent definitions
|
|
328
|
-
✅ Created .agents-workspace/ for runtime
|
|
329
|
-
✅ Updated ossa.yaml with agent references
|
|
330
|
-
```
|
|
331
|
-
|
|
332
|
-
See [Migration Guides](/docs/migration-guides) for framework-specific instructions.
|
|
333
|
-
|
|
334
|
-
## Summary
|
|
335
|
-
|
|
336
|
-
| Folder | Purpose | Version Control | Contains |
|
|
337
|
-
|--------|---------|-----------------|----------|
|
|
338
|
-
| `.agents/` | Agent definitions | ✅ YES | Manifests, prompts, tool definitions |
|
|
339
|
-
| `.agents-workspace/` | Agent runtime | ❌ NO | Logs, memory, context, artifacts |
|
|
340
|
-
|
|
341
|
-
**Key Takeaway**: `.agents/` defines **what** agents do (commit to git). `.agents-workspace/` is **where** they work (never commit).
|
|
342
|
-
|
|
343
|
-
## Next Steps
|
|
344
|
-
|
|
345
|
-
- [Create Your First Agent](/docs/getting-started/first-agent)
|
|
346
|
-
- [Agent Manifest Reference](/docs/quick-reference#manifest)
|
|
347
|
-
- [Taxonomy Best Practices](/docs/for-audiences/architects#taxonomy)
|
|
348
|
-
- [Multi-Agent Systems](/docs/examples#multi-agent)
|
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: "Migration Guides"
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# Migration Guides
|
|
6
|
-
|
|
7
|
-
Migrate agents from existing frameworks to OSSA format.
|
|
8
|
-
|
|
9
|
-
## Available Migration Guides
|
|
10
|
-
|
|
11
|
-
### LangChain → OSSA
|
|
12
|
-
|
|
13
|
-
**Location**: [examples/migration-guides/from-langchain-to-ossa.yaml](https://github.com/blueflyio/openstandardagents/blob/main/examples/migration-guides/from-langchain-to-ossa.yaml)
|
|
14
|
-
|
|
15
|
-
**Covers**:
|
|
16
|
-
- Simple LangChain agents
|
|
17
|
-
- Agents with custom tools
|
|
18
|
-
- Multi-agent systems
|
|
19
|
-
- ReAct agents
|
|
20
|
-
|
|
21
|
-
**Key Differences**:
|
|
22
|
-
- LangChain: Code-based (Python)
|
|
23
|
-
- OSSA: Declarative (YAML/JSON)
|
|
24
|
-
- LangChain: Framework-specific
|
|
25
|
-
- OSSA: Framework-agnostic
|
|
26
|
-
|
|
27
|
-
### Anthropic SDK → OSSA
|
|
28
|
-
|
|
29
|
-
**Status**: Coming soon
|
|
30
|
-
|
|
31
|
-
**Will Cover**:
|
|
32
|
-
- Anthropic SDK agent structure
|
|
33
|
-
- Tool definitions
|
|
34
|
-
- Message handling
|
|
35
|
-
- Migration patterns
|
|
36
|
-
|
|
37
|
-
### MCP-Only Agents → OSSA
|
|
38
|
-
|
|
39
|
-
**Status**: Coming soon
|
|
40
|
-
|
|
41
|
-
**Will Cover**:
|
|
42
|
-
- MCP server integration
|
|
43
|
-
- Tool exposure
|
|
44
|
-
- Protocol bridging
|
|
45
|
-
|
|
46
|
-
### Custom Framework → OSSA
|
|
47
|
-
|
|
48
|
-
**General Approach**:
|
|
49
|
-
|
|
50
|
-
1. **Map Agent Structure**
|
|
51
|
-
- Identify agent components
|
|
52
|
-
- Map to OSSA format
|
|
53
|
-
- Define capabilities
|
|
54
|
-
|
|
55
|
-
2. **Define Tools**
|
|
56
|
-
- List available tools
|
|
57
|
-
- Map to OSSA tool types
|
|
58
|
-
- Configure endpoints
|
|
59
|
-
|
|
60
|
-
3. **Configure LLM**
|
|
61
|
-
- Identify LLM provider
|
|
62
|
-
- Map model settings
|
|
63
|
-
- Set parameters
|
|
64
|
-
|
|
65
|
-
4. **Add Observability**
|
|
66
|
-
- Configure tracing
|
|
67
|
-
- Set up metrics
|
|
68
|
-
- Enable logging
|
|
69
|
-
|
|
70
|
-
5. **Validate**
|
|
71
|
-
- Use OSSA CLI
|
|
72
|
-
- Fix validation errors
|
|
73
|
-
- Test functionality
|
|
74
|
-
|
|
75
|
-
## Migration Checklist
|
|
76
|
-
|
|
77
|
-
### Pre-Migration
|
|
78
|
-
|
|
79
|
-
- [ ] Inventory existing agents
|
|
80
|
-
- [ ] Identify framework dependencies
|
|
81
|
-
- [ ] Document current capabilities
|
|
82
|
-
- [ ] Plan migration order
|
|
83
|
-
|
|
84
|
-
### Migration
|
|
85
|
-
|
|
86
|
-
- [ ] Convert agent structure
|
|
87
|
-
- [ ] Map tools/capabilities
|
|
88
|
-
- [ ] Configure LLM settings
|
|
89
|
-
- [ ] Add observability
|
|
90
|
-
- [ ] Set constraints
|
|
91
|
-
|
|
92
|
-
### Post-Migration
|
|
93
|
-
|
|
94
|
-
- [ ] Validate with OSSA CLI
|
|
95
|
-
- [ ] Test functionality
|
|
96
|
-
- [ ] Compare behavior
|
|
97
|
-
- [ ] Update documentation
|
|
98
|
-
- [ ] Deploy and monitor
|
|
99
|
-
|
|
100
|
-
## Migration Tools
|
|
101
|
-
|
|
102
|
-
### OSSA CLI
|
|
103
|
-
|
|
104
|
-
```bash
|
|
105
|
-
# Migrate agent between versions
|
|
106
|
-
ossa migrate agent.yaml --target-version 0.2.2
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
### Manual Migration
|
|
110
|
-
|
|
111
|
-
1. Use migration guide examples
|
|
112
|
-
2. Follow step-by-step instructions
|
|
113
|
-
3. Validate at each step
|
|
114
|
-
4. Test thoroughly
|
|
115
|
-
|
|
116
|
-
## Common Migration Patterns
|
|
117
|
-
|
|
118
|
-
### Pattern 1: Simple Agent
|
|
119
|
-
|
|
120
|
-
**Before** (Framework-specific):
|
|
121
|
-
```python
|
|
122
|
-
# Framework code
|
|
123
|
-
agent = create_agent(llm, tools)
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
**After** (OSSA):
|
|
127
|
-
```yaml
|
|
128
|
-
apiVersion: ossa/v0.2.2
|
|
129
|
-
kind: Agent
|
|
130
|
-
spec:
|
|
131
|
-
role: Agent description
|
|
132
|
-
llm: { ... }
|
|
133
|
-
tools: [ ... ]
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### Pattern 2: Agent with Tools
|
|
137
|
-
|
|
138
|
-
**Before**:
|
|
139
|
-
```python
|
|
140
|
-
tools = [Tool1(), Tool2()]
|
|
141
|
-
agent = create_agent(llm, tools)
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
**After**:
|
|
145
|
-
```yaml
|
|
146
|
-
spec:
|
|
147
|
-
tools:
|
|
148
|
-
- type: function
|
|
149
|
-
name: tool1
|
|
150
|
-
- type: http
|
|
151
|
-
name: tool2
|
|
152
|
-
endpoint: https://api.example.com
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
### Pattern 3: Multi-Agent System
|
|
156
|
-
|
|
157
|
-
**Before**:
|
|
158
|
-
```python
|
|
159
|
-
orchestrator = create_orchestrator()
|
|
160
|
-
worker1 = create_worker()
|
|
161
|
-
worker2 = create_worker()
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
**After**:
|
|
165
|
-
```yaml
|
|
166
|
-
# orchestrator.ossa.yaml
|
|
167
|
-
spec:
|
|
168
|
-
tools:
|
|
169
|
-
- type: http
|
|
170
|
-
name: invoke_worker
|
|
171
|
-
endpoint: http://worker:8080/api
|
|
172
|
-
|
|
173
|
-
# worker.ossa.yaml
|
|
174
|
-
spec:
|
|
175
|
-
role: Worker agent
|
|
176
|
-
# ...
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
## Validation
|
|
180
|
-
|
|
181
|
-
### Validate Migrated Agent
|
|
182
|
-
|
|
183
|
-
```bash
|
|
184
|
-
ossa validate migrated-agent.ossa.yaml --verbose
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
### Compare Behavior
|
|
188
|
-
|
|
189
|
-
1. Run original agent with test inputs
|
|
190
|
-
2. Run OSSA agent with same inputs
|
|
191
|
-
3. Compare outputs
|
|
192
|
-
4. Verify functionality
|
|
193
|
-
|
|
194
|
-
## Troubleshooting
|
|
195
|
-
|
|
196
|
-
### Common Issues
|
|
197
|
-
|
|
198
|
-
1. **Missing Fields**: Check schema reference
|
|
199
|
-
2. **Invalid Tool Types**: Use supported types
|
|
200
|
-
3. **LLM Provider**: Verify provider support
|
|
201
|
-
4. **Tool Configuration**: Check endpoint/auth config
|
|
202
|
-
|
|
203
|
-
### Getting Help
|
|
204
|
-
|
|
205
|
-
- [GitLab Issues](https://github.com/blueflyio/openstandardagents/issues)
|
|
206
|
-
- [Documentation](../Technical/Specification-Deep-Dive)
|
|
207
|
-
- [Examples](../Getting-Started-Examples)
|
|
208
|
-
|
|
209
|
-
## Related
|
|
210
|
-
|
|
211
|
-
- [Getting Started](../Getting-Started/Hello-World)
|
|
212
|
-
- [Schema Reference](../Technical/Schema-Reference)
|
|
213
|
-
- [Integration Patterns](Integration-Patterns)
|
|
214
|
-
|