@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
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
# GitHub Sync Strategy
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
**GitLab** = Private development (source of truth)
|
|
6
|
+
**GitHub** = Public mirror + community contributions
|
|
7
|
+
|
|
8
|
+
## Current State
|
|
9
|
+
|
|
10
|
+
### GitHub Repository
|
|
11
|
+
- **URL**: https://github.com/blueflyio/openstandardagents
|
|
12
|
+
- **Status**: Public
|
|
13
|
+
- **Features Enabled**: Issues ✓, Wiki ✓, Discussions ✓, PRs ✓
|
|
14
|
+
- **Current PRs**: 10+ open (mostly Dependabot)
|
|
15
|
+
|
|
16
|
+
### GitLab Repository
|
|
17
|
+
- **URL**: https://gitlab.com/blueflyio/openstandardagents
|
|
18
|
+
- **Status**: Private development
|
|
19
|
+
- **Features**: Full CI/CD, MRs, Wiki, Issues
|
|
20
|
+
|
|
21
|
+
## Sync Strategy
|
|
22
|
+
|
|
23
|
+
### 1. Code Sync (GitLab → GitHub)
|
|
24
|
+
|
|
25
|
+
**Method**: Automatic push mirror
|
|
26
|
+
|
|
27
|
+
```yaml
|
|
28
|
+
# .gitlab-ci.yml
|
|
29
|
+
mirror:github:
|
|
30
|
+
stage: deploy
|
|
31
|
+
only:
|
|
32
|
+
- main
|
|
33
|
+
- tags
|
|
34
|
+
script:
|
|
35
|
+
- git push --mirror https://${GITHUB_TOKEN}@github.com/blueflyio/openstandardagents.git
|
|
36
|
+
variables:
|
|
37
|
+
GIT_STRATEGY: clone
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**What syncs**:
|
|
41
|
+
- ✅ main branch
|
|
42
|
+
- ✅ tags/releases
|
|
43
|
+
- ✅ commit history
|
|
44
|
+
- ❌ development branch (keep private)
|
|
45
|
+
- ❌ feature branches (keep private)
|
|
46
|
+
|
|
47
|
+
### 2. Pull Requests (GitHub → GitLab)
|
|
48
|
+
|
|
49
|
+
**Workflow**:
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
GitHub PR → Review → Create GitLab MR → Merge → Sync back to GitHub
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**Process**:
|
|
56
|
+
|
|
57
|
+
1. **External contributor opens PR on GitHub**
|
|
58
|
+
2. **Bot comments**: "Thanks! We'll review and sync to our internal GitLab"
|
|
59
|
+
3. **Maintainer creates GitLab MR** from PR
|
|
60
|
+
4. **Review and merge on GitLab**
|
|
61
|
+
5. **Changes sync back to GitHub** via mirror
|
|
62
|
+
6. **GitHub PR auto-closes** (commit in main)
|
|
63
|
+
|
|
64
|
+
**Automation Script**:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
#!/bin/bash
|
|
68
|
+
# scripts/sync-github-pr.sh
|
|
69
|
+
|
|
70
|
+
PR_NUMBER=$1
|
|
71
|
+
gh pr checkout $PR_NUMBER
|
|
72
|
+
git checkout -b github-pr-$PR_NUMBER
|
|
73
|
+
git push origin github-pr-$PR_NUMBER
|
|
74
|
+
|
|
75
|
+
# Create GitLab MR
|
|
76
|
+
glab mr create \
|
|
77
|
+
--title "GitHub PR #$PR_NUMBER: $(gh pr view $PR_NUMBER --json title -q .title)" \
|
|
78
|
+
--description "From: https://github.com/blueflyio/openstandardagents/pull/$PR_NUMBER" \
|
|
79
|
+
--source-branch github-pr-$PR_NUMBER \
|
|
80
|
+
--target-branch main
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 3. Issues Sync
|
|
84
|
+
|
|
85
|
+
**Strategy**: Keep separate
|
|
86
|
+
|
|
87
|
+
- **GitHub Issues**: Community questions, bug reports
|
|
88
|
+
- **GitLab Issues**: Internal development, roadmap
|
|
89
|
+
|
|
90
|
+
**Workflow**:
|
|
91
|
+
|
|
92
|
+
1. **Community reports issue on GitHub**
|
|
93
|
+
2. **Triage**: Is it a bug/feature request?
|
|
94
|
+
3. **If actionable**: Create GitLab issue, link back
|
|
95
|
+
4. **Close GitHub issue** with: "Tracked internally at gitlab.com/..."
|
|
96
|
+
|
|
97
|
+
**Automation**:
|
|
98
|
+
|
|
99
|
+
```yaml
|
|
100
|
+
# .github/workflows/issue-triage.yml
|
|
101
|
+
name: Issue Triage
|
|
102
|
+
on:
|
|
103
|
+
issues:
|
|
104
|
+
types: [opened]
|
|
105
|
+
jobs:
|
|
106
|
+
triage:
|
|
107
|
+
runs-on: ubuntu-latest
|
|
108
|
+
steps:
|
|
109
|
+
- name: Comment
|
|
110
|
+
uses: actions/github-script@v7
|
|
111
|
+
with:
|
|
112
|
+
script: |
|
|
113
|
+
github.rest.issues.createComment({
|
|
114
|
+
issue_number: context.issue.number,
|
|
115
|
+
owner: context.repo.owner,
|
|
116
|
+
repo: context.repo.repo,
|
|
117
|
+
body: '👋 Thanks for opening an issue! We track development on GitLab. A maintainer will review and create an internal issue if needed.'
|
|
118
|
+
})
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### 4. Wiki Sync
|
|
122
|
+
|
|
123
|
+
**Strategy**: One-way GitLab → GitHub
|
|
124
|
+
|
|
125
|
+
**What to sync**:
|
|
126
|
+
- ✅ Public documentation
|
|
127
|
+
- ✅ Getting started guides
|
|
128
|
+
- ✅ API reference
|
|
129
|
+
- ❌ Internal operations docs
|
|
130
|
+
- ❌ Private deployment guides
|
|
131
|
+
|
|
132
|
+
**Automation**:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
#!/bin/bash
|
|
136
|
+
# scripts/sync-wiki.sh
|
|
137
|
+
|
|
138
|
+
# Clone GitLab wiki
|
|
139
|
+
git clone https://gitlab.com/blueflyio/openstandardagents.wiki.git gitlab-wiki
|
|
140
|
+
|
|
141
|
+
# Clone GitHub wiki
|
|
142
|
+
git clone https://github.com/blueflyio/openstandardagents.wiki.git github-wiki
|
|
143
|
+
|
|
144
|
+
# Sync public pages
|
|
145
|
+
PUBLIC_PAGES=(
|
|
146
|
+
"Home.md"
|
|
147
|
+
"Getting-Started.md"
|
|
148
|
+
"CLI-Utilities.md"
|
|
149
|
+
"V0.2.6-Release-Notes.md"
|
|
150
|
+
)
|
|
151
|
+
|
|
152
|
+
for page in "${PUBLIC_PAGES[@]}"; do
|
|
153
|
+
cp "gitlab-wiki/$page" "github-wiki/$page"
|
|
154
|
+
done
|
|
155
|
+
|
|
156
|
+
cd github-wiki
|
|
157
|
+
git add .
|
|
158
|
+
git commit -m "Sync from GitLab wiki"
|
|
159
|
+
git push
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### 5. Releases Sync
|
|
163
|
+
|
|
164
|
+
**Strategy**: Automatic via tags
|
|
165
|
+
|
|
166
|
+
**Workflow**:
|
|
167
|
+
|
|
168
|
+
1. **Create release on GitLab**
|
|
169
|
+
2. **Tag syncs to GitHub** (via mirror)
|
|
170
|
+
3. **GitHub Actions creates release** from tag
|
|
171
|
+
|
|
172
|
+
```yaml
|
|
173
|
+
# .github/workflows/release.yml
|
|
174
|
+
name: Create Release
|
|
175
|
+
on:
|
|
176
|
+
push:
|
|
177
|
+
tags:
|
|
178
|
+
- 'v*'
|
|
179
|
+
jobs:
|
|
180
|
+
release:
|
|
181
|
+
runs-on: ubuntu-latest
|
|
182
|
+
steps:
|
|
183
|
+
- uses: actions/checkout@v4
|
|
184
|
+
- name: Create Release
|
|
185
|
+
uses: softprops/action-gh-release@v1
|
|
186
|
+
with:
|
|
187
|
+
generate_release_notes: true
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
## Implementation Plan
|
|
191
|
+
|
|
192
|
+
### Phase 1: Setup (Week 1)
|
|
193
|
+
|
|
194
|
+
- [ ] Configure GitLab → GitHub mirror
|
|
195
|
+
- [ ] Add GitHub token to GitLab CI
|
|
196
|
+
- [ ] Test mirror sync
|
|
197
|
+
- [ ] Update GitHub README with contribution notice
|
|
198
|
+
|
|
199
|
+
### Phase 2: PR Workflow (Week 2)
|
|
200
|
+
|
|
201
|
+
- [ ] Create PR sync script
|
|
202
|
+
- [ ] Add GitHub Actions for PR comments
|
|
203
|
+
- [ ] Document PR workflow
|
|
204
|
+
- [ ] Test with sample PR
|
|
205
|
+
|
|
206
|
+
### Phase 3: Issue Management (Week 3)
|
|
207
|
+
|
|
208
|
+
- [ ] Add issue triage automation
|
|
209
|
+
- [ ] Create issue templates
|
|
210
|
+
- [ ] Document issue workflow
|
|
211
|
+
- [ ] Train team on process
|
|
212
|
+
|
|
213
|
+
### Phase 4: Wiki & Releases (Week 4)
|
|
214
|
+
|
|
215
|
+
- [ ] Create wiki sync script
|
|
216
|
+
- [ ] Setup release automation
|
|
217
|
+
- [ ] Test full workflow
|
|
218
|
+
- [ ] Document for team
|
|
219
|
+
|
|
220
|
+
## GitHub Repository Configuration
|
|
221
|
+
|
|
222
|
+
### Settings to Update
|
|
223
|
+
|
|
224
|
+
**General**:
|
|
225
|
+
- Description: "Open Standard for AI Agents - Public mirror of GitLab repo"
|
|
226
|
+
- Website: https://openstandardagents.org
|
|
227
|
+
- Topics: `ai`, `agents`, `openapi`, `standard`, `ossa`
|
|
228
|
+
|
|
229
|
+
**Features**:
|
|
230
|
+
- ✅ Issues (for community)
|
|
231
|
+
- ✅ Wiki (synced from GitLab)
|
|
232
|
+
- ✅ Discussions (for community)
|
|
233
|
+
- ✅ Pull Requests (with workflow)
|
|
234
|
+
|
|
235
|
+
**Branch Protection** (main):
|
|
236
|
+
- ✅ Require pull request reviews
|
|
237
|
+
- ✅ Require status checks
|
|
238
|
+
- ✅ Restrict pushes (mirror only)
|
|
239
|
+
|
|
240
|
+
### README Notice
|
|
241
|
+
|
|
242
|
+
Add to top of GitHub README:
|
|
243
|
+
|
|
244
|
+
```markdown
|
|
245
|
+
> **Note**: This is a public mirror of our GitLab repository.
|
|
246
|
+
>
|
|
247
|
+
> - **Development**: https://gitlab.com/blueflyio/openstandardagents
|
|
248
|
+
> - **Issues**: Report here or on GitLab
|
|
249
|
+
> - **Pull Requests**: Welcome! We'll sync to GitLab for review
|
|
250
|
+
> - **Documentation**: https://openstandardagents.org
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
## Handling Dependabot PRs
|
|
254
|
+
|
|
255
|
+
**Current**: 10+ open Dependabot PRs
|
|
256
|
+
|
|
257
|
+
**Strategy**:
|
|
258
|
+
|
|
259
|
+
1. **Review on GitHub** (quick security check)
|
|
260
|
+
2. **Batch merge** weekly
|
|
261
|
+
3. **Sync to GitLab** as single MR
|
|
262
|
+
4. **Test on GitLab CI**
|
|
263
|
+
5. **Merge and sync back**
|
|
264
|
+
|
|
265
|
+
**Automation**:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
# scripts/batch-dependabot.sh
|
|
269
|
+
gh pr list --label dependencies --json number -q '.[].number' | \
|
|
270
|
+
xargs -I {} gh pr merge {} --auto --squash
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
## Security Considerations
|
|
274
|
+
|
|
275
|
+
### Secrets Management
|
|
276
|
+
|
|
277
|
+
- ❌ Never commit secrets to GitHub
|
|
278
|
+
- ✅ Use GitLab CI variables for sensitive data
|
|
279
|
+
- ✅ GitHub Actions secrets for public workflows
|
|
280
|
+
- ✅ Rotate tokens every 90 days
|
|
281
|
+
|
|
282
|
+
### Private Information
|
|
283
|
+
|
|
284
|
+
**Keep on GitLab only**:
|
|
285
|
+
- Internal deployment configs
|
|
286
|
+
- Customer information
|
|
287
|
+
- Private API keys
|
|
288
|
+
- Team discussions
|
|
289
|
+
- Development branches
|
|
290
|
+
|
|
291
|
+
**Safe for GitHub**:
|
|
292
|
+
- Public documentation
|
|
293
|
+
- Open source code
|
|
294
|
+
- Release notes
|
|
295
|
+
- Community discussions
|
|
296
|
+
|
|
297
|
+
## Monitoring
|
|
298
|
+
|
|
299
|
+
### Metrics to Track
|
|
300
|
+
|
|
301
|
+
- Mirror sync status (daily)
|
|
302
|
+
- PR response time (< 48 hours)
|
|
303
|
+
- Issue triage time (< 24 hours)
|
|
304
|
+
- Wiki sync frequency (weekly)
|
|
305
|
+
- Community engagement (monthly)
|
|
306
|
+
|
|
307
|
+
### Alerts
|
|
308
|
+
|
|
309
|
+
- Mirror sync failure
|
|
310
|
+
- PR older than 7 days
|
|
311
|
+
- Issue without response > 48 hours
|
|
312
|
+
|
|
313
|
+
## Team Responsibilities
|
|
314
|
+
|
|
315
|
+
### Maintainers
|
|
316
|
+
|
|
317
|
+
- Review GitHub PRs
|
|
318
|
+
- Triage GitHub issues
|
|
319
|
+
- Sync wiki weekly
|
|
320
|
+
- Monitor mirror status
|
|
321
|
+
|
|
322
|
+
### Contributors
|
|
323
|
+
|
|
324
|
+
- Can submit PRs on GitHub
|
|
325
|
+
- Can open issues on GitHub
|
|
326
|
+
- Follow contribution guidelines
|
|
327
|
+
- Respect code of conduct
|
|
328
|
+
|
|
329
|
+
## Documentation
|
|
330
|
+
|
|
331
|
+
### For Contributors
|
|
332
|
+
|
|
333
|
+
- `CONTRIBUTING.md` - How to contribute
|
|
334
|
+
- `.github/PULL_REQUEST_TEMPLATE.md` - PR template
|
|
335
|
+
- `.github/ISSUE_TEMPLATE/` - Issue templates
|
|
336
|
+
|
|
337
|
+
### For Maintainers
|
|
338
|
+
|
|
339
|
+
- `docs/operations/github-sync-strategy.md` - This document
|
|
340
|
+
- `docs/operations/pr-workflow.md` - PR handling
|
|
341
|
+
- `docs/operations/issue-triage.md` - Issue management
|
|
342
|
+
|
|
343
|
+
## Success Criteria
|
|
344
|
+
|
|
345
|
+
- ✅ Code syncs automatically within 5 minutes
|
|
346
|
+
- ✅ PRs reviewed within 48 hours
|
|
347
|
+
- ✅ Issues triaged within 24 hours
|
|
348
|
+
- ✅ Wiki updated weekly
|
|
349
|
+
- ✅ Zero security incidents
|
|
350
|
+
- ✅ Active community engagement
|
|
351
|
+
|
|
352
|
+
## References
|
|
353
|
+
|
|
354
|
+
- [GitLab Mirroring](https://docs.gitlab.com/ee/user/project/repository/mirror/)
|
|
355
|
+
- [GitHub Actions](https://docs.github.com/en/actions)
|
|
356
|
+
- [gh CLI](https://cli.github.com/)
|
|
357
|
+
- [glab CLI](https://gitlab.com/gitlab-org/cli)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"apiVersion": "ossa/v0.2",
|
|
2
|
+
"apiVersion": "ossa/v0.2.4",
|
|
3
3
|
"kind": "Agent",
|
|
4
4
|
"metadata": {
|
|
5
5
|
"name": "claude-assistant",
|
|
@@ -34,12 +34,13 @@
|
|
|
34
34
|
"description": "Mathematical expression to evaluate"
|
|
35
35
|
}
|
|
36
36
|
},
|
|
37
|
-
"required": [
|
|
37
|
+
"required": [
|
|
38
|
+
"expression"
|
|
39
|
+
]
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
42
|
],
|
|
41
43
|
"streaming": false
|
|
42
44
|
}
|
|
43
45
|
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"apiVersion": "ossa/v0.2",
|
|
2
|
+
"apiVersion": "ossa/v0.2.4",
|
|
3
3
|
"kind": "Agent",
|
|
4
4
|
"metadata": {
|
|
5
5
|
"name": "autogen-assistant",
|
|
@@ -28,10 +28,12 @@
|
|
|
28
28
|
},
|
|
29
29
|
"max_consecutive_auto_reply": 10,
|
|
30
30
|
"groupchat": {
|
|
31
|
-
"agents": [
|
|
31
|
+
"agents": [
|
|
32
|
+
"user_proxy",
|
|
33
|
+
"assistant"
|
|
34
|
+
],
|
|
32
35
|
"max_round": 20
|
|
33
36
|
}
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
|
-
}
|
|
37
|
-
|
|
39
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"apiVersion": "ossa/v0.2",
|
|
2
|
+
"apiVersion": "ossa/v0.2.4",
|
|
3
3
|
"kind": "Agent",
|
|
4
4
|
"metadata": {
|
|
5
5
|
"name": "research-agent",
|
|
@@ -18,7 +18,14 @@
|
|
|
18
18
|
"type": "http",
|
|
19
19
|
"name": "web_search",
|
|
20
20
|
"endpoint": "https://api.search.example.com",
|
|
21
|
-
"capabilities": [
|
|
21
|
+
"capabilities": [
|
|
22
|
+
{
|
|
23
|
+
"name": "search"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"name": "retrieve"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
22
29
|
}
|
|
23
30
|
]
|
|
24
31
|
},
|
|
@@ -29,8 +36,10 @@
|
|
|
29
36
|
"role": "Research Specialist",
|
|
30
37
|
"goal": "Gather comprehensive and accurate information on assigned research topics",
|
|
31
38
|
"backstory": "You are an expert researcher with years of experience in information gathering and analysis. You excel at finding reliable sources and synthesizing complex information.",
|
|
32
|
-
"tools": [
|
|
39
|
+
"tools": [
|
|
40
|
+
"web_search",
|
|
41
|
+
"document_analyzer"
|
|
42
|
+
]
|
|
33
43
|
}
|
|
34
44
|
}
|
|
35
|
-
}
|
|
36
|
-
|
|
45
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"apiVersion": "ossa/v0.2",
|
|
2
|
+
"apiVersion": "ossa/v0.2.4",
|
|
3
3
|
"kind": "Agent",
|
|
4
4
|
"metadata": {
|
|
5
5
|
"name": "code-review-agent",
|
|
@@ -18,7 +18,17 @@
|
|
|
18
18
|
"type": "mcp",
|
|
19
19
|
"name": "analyze_code",
|
|
20
20
|
"server": "code-reviewer",
|
|
21
|
-
"capabilities": [
|
|
21
|
+
"capabilities": [
|
|
22
|
+
{
|
|
23
|
+
"name": "review"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"name": "suggest"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "explain"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
22
32
|
}
|
|
23
33
|
]
|
|
24
34
|
},
|
|
@@ -28,8 +38,14 @@
|
|
|
28
38
|
"agent_type": "composer",
|
|
29
39
|
"workspace_config": {
|
|
30
40
|
"rules_file": ".cursor/.cursorrules",
|
|
31
|
-
"context_files": [
|
|
32
|
-
|
|
41
|
+
"context_files": [
|
|
42
|
+
"src/**/*.ts",
|
|
43
|
+
"tests/**/*.ts"
|
|
44
|
+
],
|
|
45
|
+
"ignore_patterns": [
|
|
46
|
+
"node_modules/**",
|
|
47
|
+
"dist/**"
|
|
48
|
+
]
|
|
33
49
|
},
|
|
34
50
|
"capabilities": {
|
|
35
51
|
"code_generation": false,
|
|
@@ -43,5 +59,4 @@
|
|
|
43
59
|
}
|
|
44
60
|
}
|
|
45
61
|
}
|
|
46
|
-
}
|
|
47
|
-
|
|
62
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"apiVersion": "ossa/v0.2",
|
|
2
|
+
"apiVersion": "ossa/v0.2.4",
|
|
3
3
|
"kind": "Agent",
|
|
4
4
|
"metadata": {
|
|
5
5
|
"name": "langchain-agent",
|
|
@@ -17,13 +17,30 @@
|
|
|
17
17
|
{
|
|
18
18
|
"type": "function",
|
|
19
19
|
"name": "calculator",
|
|
20
|
-
"capabilities": [
|
|
20
|
+
"capabilities": [
|
|
21
|
+
{
|
|
22
|
+
"name": "add"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "subtract"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "multiply"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "divide"
|
|
32
|
+
}
|
|
33
|
+
]
|
|
21
34
|
},
|
|
22
35
|
{
|
|
23
36
|
"type": "http",
|
|
24
37
|
"name": "web_search",
|
|
25
38
|
"endpoint": "https://api.search.example.com",
|
|
26
|
-
"capabilities": [
|
|
39
|
+
"capabilities": [
|
|
40
|
+
{
|
|
41
|
+
"name": "search"
|
|
42
|
+
}
|
|
43
|
+
]
|
|
27
44
|
}
|
|
28
45
|
]
|
|
29
46
|
},
|
|
@@ -38,5 +55,4 @@
|
|
|
38
55
|
}
|
|
39
56
|
}
|
|
40
57
|
}
|
|
41
|
-
}
|
|
42
|
-
|
|
58
|
+
}
|
|
@@ -37,7 +37,9 @@
|
|
|
37
37
|
"default": 5
|
|
38
38
|
}
|
|
39
39
|
},
|
|
40
|
-
"required": [
|
|
40
|
+
"required": [
|
|
41
|
+
"query"
|
|
42
|
+
]
|
|
41
43
|
}
|
|
42
44
|
},
|
|
43
45
|
{
|
|
@@ -52,7 +54,9 @@
|
|
|
52
54
|
"description": "Mathematical expression to evaluate (e.g., '2 + 2', 'sqrt(16)', 'sin(pi/2)')"
|
|
53
55
|
}
|
|
54
56
|
},
|
|
55
|
-
"required": [
|
|
57
|
+
"required": [
|
|
58
|
+
"expression"
|
|
59
|
+
]
|
|
56
60
|
}
|
|
57
61
|
},
|
|
58
62
|
{
|
|
@@ -68,7 +72,11 @@
|
|
|
68
72
|
},
|
|
69
73
|
"units": {
|
|
70
74
|
"type": "string",
|
|
71
|
-
"enum": [
|
|
75
|
+
"enum": [
|
|
76
|
+
"celsius",
|
|
77
|
+
"fahrenheit",
|
|
78
|
+
"kelvin"
|
|
79
|
+
],
|
|
72
80
|
"description": "Temperature units",
|
|
73
81
|
"default": "celsius"
|
|
74
82
|
},
|
|
@@ -78,7 +86,9 @@
|
|
|
78
86
|
"default": false
|
|
79
87
|
}
|
|
80
88
|
},
|
|
81
|
-
"required": [
|
|
89
|
+
"required": [
|
|
90
|
+
"location"
|
|
91
|
+
]
|
|
82
92
|
}
|
|
83
93
|
},
|
|
84
94
|
{
|
|
@@ -102,7 +112,10 @@
|
|
|
102
112
|
"description": "Target language code (e.g., 'en', 'es', 'fr')"
|
|
103
113
|
}
|
|
104
114
|
},
|
|
105
|
-
"required": [
|
|
115
|
+
"required": [
|
|
116
|
+
"text",
|
|
117
|
+
"target_language"
|
|
118
|
+
]
|
|
106
119
|
}
|
|
107
120
|
},
|
|
108
121
|
{
|
|
@@ -125,7 +138,11 @@
|
|
|
125
138
|
"description": "Target unit (e.g., 'meters', 'feet', 'celsius', 'pounds')"
|
|
126
139
|
}
|
|
127
140
|
},
|
|
128
|
-
"required": [
|
|
141
|
+
"required": [
|
|
142
|
+
"value",
|
|
143
|
+
"from_unit",
|
|
144
|
+
"to_unit"
|
|
145
|
+
]
|
|
129
146
|
}
|
|
130
147
|
},
|
|
131
148
|
{
|
|
@@ -141,12 +158,18 @@
|
|
|
141
158
|
},
|
|
142
159
|
"format": {
|
|
143
160
|
"type": "string",
|
|
144
|
-
"enum": [
|
|
161
|
+
"enum": [
|
|
162
|
+
"12h",
|
|
163
|
+
"24h",
|
|
164
|
+
"iso"
|
|
165
|
+
],
|
|
145
166
|
"description": "Time format",
|
|
146
167
|
"default": "12h"
|
|
147
168
|
}
|
|
148
169
|
},
|
|
149
|
-
"required": [
|
|
170
|
+
"required": [
|
|
171
|
+
"timezone"
|
|
172
|
+
]
|
|
150
173
|
}
|
|
151
174
|
}
|
|
152
175
|
],
|
|
@@ -162,4 +185,4 @@
|
|
|
162
185
|
}
|
|
163
186
|
}
|
|
164
187
|
}
|
|
165
|
-
}
|
|
188
|
+
}
|