@agents-at-scale/ark 0.1.37 → 0.1.38
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/dist/commands/chat/index.js +1 -2
- package/dist/commands/generate/generators/project.js +33 -26
- package/dist/commands/generate/index.js +2 -2
- package/dist/commands/generate/templateDiscovery.js +13 -4
- package/dist/components/AsyncOperation.d.ts +54 -0
- package/dist/components/AsyncOperation.js +110 -0
- package/dist/components/ChatUI.js +21 -72
- package/dist/components/SelectMenu.d.ts +17 -0
- package/dist/components/SelectMenu.js +21 -0
- package/dist/components/StatusMessage.d.ts +20 -0
- package/dist/components/StatusMessage.js +13 -0
- package/dist/ui/asyncOperations/connectingToArk.d.ts +15 -0
- package/dist/ui/asyncOperations/connectingToArk.js +63 -0
- package/package.json +5 -3
- package/templates/agent/agent.template.yaml +27 -0
- package/templates/marketplace/.editorconfig +24 -0
- package/templates/marketplace/.github/.keep +11 -0
- package/templates/marketplace/.github/workflows/.keep +16 -0
- package/templates/marketplace/.helmignore +23 -0
- package/templates/marketplace/.prettierrc.json +20 -0
- package/templates/marketplace/.yamllint.yml +53 -0
- package/templates/marketplace/README.md +197 -0
- package/templates/marketplace/agents/.keep +29 -0
- package/templates/marketplace/docs/.keep +19 -0
- package/templates/marketplace/mcp-servers/.keep +32 -0
- package/templates/marketplace/models/.keep +23 -0
- package/templates/marketplace/projects/.keep +43 -0
- package/templates/marketplace/queries/.keep +25 -0
- package/templates/marketplace/teams/.keep +29 -0
- package/templates/marketplace/tools/.keep +32 -0
- package/templates/marketplace/tools/examples/.keep +17 -0
- package/templates/mcp-server/Dockerfile +133 -0
- package/templates/mcp-server/Makefile +186 -0
- package/templates/mcp-server/README.md +178 -0
- package/templates/mcp-server/build.sh +76 -0
- package/templates/mcp-server/chart/Chart.yaml +22 -0
- package/templates/mcp-server/chart/templates/_helpers.tpl +62 -0
- package/templates/mcp-server/chart/templates/deployment.yaml +80 -0
- package/templates/mcp-server/chart/templates/hpa.yaml +32 -0
- package/templates/mcp-server/chart/templates/mcpserver.yaml +21 -0
- package/templates/mcp-server/chart/templates/secret.yaml +11 -0
- package/templates/mcp-server/chart/templates/service.yaml +15 -0
- package/templates/mcp-server/chart/templates/serviceaccount.yaml +13 -0
- package/templates/mcp-server/chart/values.yaml +84 -0
- package/templates/mcp-server/example-values.yaml +74 -0
- package/templates/mcp-server/examples/{{ .Values.mcpServerName }}-agent.yaml +33 -0
- package/templates/mcp-server/examples/{{ .Values.mcpServerName }}-query.yaml +24 -0
- package/templates/models/azure.yaml +33 -0
- package/templates/models/claude.yaml +28 -0
- package/templates/models/gemini.yaml +28 -0
- package/templates/models/openai.yaml +39 -0
- package/templates/project/.editorconfig +24 -0
- package/templates/project/.helmignore +24 -0
- package/templates/project/.prettierrc.json +16 -0
- package/templates/project/.yamllint.yml +50 -0
- package/templates/project/Chart.yaml +19 -0
- package/templates/project/Makefile +360 -0
- package/templates/project/README.md +377 -0
- package/templates/project/agents/.keep +11 -0
- package/templates/project/docs/.keep +14 -0
- package/templates/project/mcp-servers/.keep +34 -0
- package/templates/project/models/.keep +17 -0
- package/templates/project/queries/.keep +11 -0
- package/templates/project/scripts/setup.sh +108 -0
- package/templates/project/teams/.keep +11 -0
- package/templates/project/templates/00-rbac.yaml +168 -0
- package/templates/project/templates/01-models.yaml +11 -0
- package/templates/project/templates/02-mcp-servers.yaml +22 -0
- package/templates/project/templates/03-tools.yaml +12 -0
- package/templates/project/templates/04-agents.yaml +12 -0
- package/templates/project/templates/05-teams.yaml +11 -0
- package/templates/project/templates/06-queries.yaml +11 -0
- package/templates/project/templates/_helpers.tpl +91 -0
- package/templates/project/tests/e2e/.keep +10 -0
- package/templates/project/tests/unit/.keep +10 -0
- package/templates/project/tools/.keep +25 -0
- package/templates/project/tools/example-tool.yaml.disabled +94 -0
- package/templates/project/tools/examples/data-tool/Dockerfile +32 -0
- package/templates/project/values.yaml +141 -0
- package/templates/query/query.template.yaml +13 -0
- package/templates/team/team.template.yaml +17 -0
- package/templates/tool/.python-version +1 -0
- package/templates/tool/Dockerfile +23 -0
- package/templates/tool/README.md +238 -0
- package/templates/tool/agent.yaml +19 -0
- package/templates/tool/deploy.sh +10 -0
- package/templates/tool/deployment/deployment.yaml +31 -0
- package/templates/tool/deployment/kustomization.yaml +7 -0
- package/templates/tool/deployment/mcpserver.yaml +12 -0
- package/templates/tool/deployment/service.yaml +12 -0
- package/templates/tool/deployment/serviceaccount.yaml +8 -0
- package/templates/tool/deployment/values.yaml +3 -0
- package/templates/tool/pyproject.toml +9 -0
- package/templates/tool/src/main.py +36 -0
- package/templates/tool/uv.lock +498 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agents-at-scale/ark",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.38",
|
|
4
4
|
"description": "Ark CLI - Interactive terminal interface for ARK agents",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -8,10 +8,12 @@
|
|
|
8
8
|
"ark": "dist/index.js"
|
|
9
9
|
},
|
|
10
10
|
"files": [
|
|
11
|
-
"dist"
|
|
11
|
+
"dist",
|
|
12
|
+
"templates"
|
|
12
13
|
],
|
|
13
14
|
"scripts": {
|
|
14
|
-
"build": "tsc && chmod +x dist/index.js",
|
|
15
|
+
"build": "npm run copy-templates && tsc && chmod +x dist/index.js",
|
|
16
|
+
"copy-templates": "rm -rf templates && cp -r ../../templates .",
|
|
15
17
|
"dev": "tsc --watch",
|
|
16
18
|
"start": "NODE_NO_WARNINGS=1 node dist/index.js",
|
|
17
19
|
"clean": "rm -rf dist",
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
apiVersion: ark.mckinsey.com/v1alpha1
|
|
2
|
+
kind: Agent
|
|
3
|
+
metadata:
|
|
4
|
+
name: {{ .Values.agentName }}-agent
|
|
5
|
+
labels:
|
|
6
|
+
project: {{ .Values.projectName }}
|
|
7
|
+
role: assistant
|
|
8
|
+
tier: basic
|
|
9
|
+
spec:
|
|
10
|
+
description: {{ .Values.agentName }} agent for {{ .Values.projectName }} project
|
|
11
|
+
prompt: |
|
|
12
|
+
You are a helpful AI assistant for the {{ .Values.projectName }} project. You provide clear, concise, and accurate responses to user questions.
|
|
13
|
+
|
|
14
|
+
Key guidelines:
|
|
15
|
+
- Be direct and to the point
|
|
16
|
+
- Use simple language when possible
|
|
17
|
+
- If you don't know something, say so
|
|
18
|
+
- Always be polite and professional
|
|
19
|
+
|
|
20
|
+
# Reference to model (will be created by Helm chart)
|
|
21
|
+
modelRef:
|
|
22
|
+
name: default
|
|
23
|
+
|
|
24
|
+
# Optional: Add built-in tools
|
|
25
|
+
tools:
|
|
26
|
+
- type: built-in
|
|
27
|
+
name: terminate
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# EditorConfig is awesome: https://EditorConfig.org
|
|
2
|
+
|
|
3
|
+
# top-most EditorConfig file
|
|
4
|
+
root = true
|
|
5
|
+
|
|
6
|
+
[*]
|
|
7
|
+
indent_style = space
|
|
8
|
+
indent_size = 2
|
|
9
|
+
end_of_line = lf
|
|
10
|
+
charset = utf-8
|
|
11
|
+
trim_trailing_whitespace = true
|
|
12
|
+
insert_final_newline = true
|
|
13
|
+
|
|
14
|
+
[*.md]
|
|
15
|
+
trim_trailing_whitespace = false
|
|
16
|
+
|
|
17
|
+
[Makefile]
|
|
18
|
+
indent_style = tab
|
|
19
|
+
|
|
20
|
+
[*.py]
|
|
21
|
+
indent_size = 4
|
|
22
|
+
|
|
23
|
+
[*.go]
|
|
24
|
+
indent_style = tab
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# GitHub Configuration Directory
|
|
2
|
+
|
|
3
|
+
GitHub-specific configuration files for the marketplace repository.
|
|
4
|
+
|
|
5
|
+
Expected contents:
|
|
6
|
+
- workflows/ - GitHub Actions workflows
|
|
7
|
+
- ISSUE_TEMPLATE/ - Issue templates
|
|
8
|
+
- PULL_REQUEST_TEMPLATE.md - PR template
|
|
9
|
+
- CODEOWNERS - Code ownership rules
|
|
10
|
+
|
|
11
|
+
These files help maintain quality and consistency in contributions.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# GitHub Workflows Directory
|
|
2
|
+
|
|
3
|
+
GitHub Actions workflows for automating marketplace operations.
|
|
4
|
+
|
|
5
|
+
Common workflows:
|
|
6
|
+
- component-validation.yml - Validate contributed components
|
|
7
|
+
- security-scan.yml - Security scanning of components
|
|
8
|
+
- documentation-build.yml - Build and deploy documentation
|
|
9
|
+
- release.yml - Automated releases
|
|
10
|
+
- pr-checks.yml - Pull request validation
|
|
11
|
+
|
|
12
|
+
Workflows should:
|
|
13
|
+
- Be efficient and reliable
|
|
14
|
+
- Provide clear feedback
|
|
15
|
+
- Follow security best practices
|
|
16
|
+
- Be well-documented
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Patterns to ignore when building packages.
|
|
2
|
+
# This supports shell glob matching, relative path matching, and
|
|
3
|
+
# negation (prefixed with !). Only one pattern per line.
|
|
4
|
+
.DS_Store
|
|
5
|
+
# Common VCS dirs
|
|
6
|
+
.git/
|
|
7
|
+
.gitignore
|
|
8
|
+
.bzr/
|
|
9
|
+
.bzrignore
|
|
10
|
+
.hg/
|
|
11
|
+
.hgignore
|
|
12
|
+
.svn/
|
|
13
|
+
# Common backup files
|
|
14
|
+
*.swp
|
|
15
|
+
*.bak
|
|
16
|
+
*.tmp
|
|
17
|
+
*.orig
|
|
18
|
+
*~
|
|
19
|
+
# Various IDEs
|
|
20
|
+
.project
|
|
21
|
+
.idea/
|
|
22
|
+
*.tmproj
|
|
23
|
+
.vscode/
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"semi": true,
|
|
3
|
+
"trailingComma": "es5",
|
|
4
|
+
"singleQuote": true,
|
|
5
|
+
"printWidth": 80,
|
|
6
|
+
"tabWidth": 2,
|
|
7
|
+
"useTabs": false,
|
|
8
|
+
"arrowParens": "avoid",
|
|
9
|
+
"bracketSpacing": true,
|
|
10
|
+
"proseWrap": "preserve",
|
|
11
|
+
"quoteProps": "as-needed",
|
|
12
|
+
"overrides": [
|
|
13
|
+
{
|
|
14
|
+
"files": "*.yaml",
|
|
15
|
+
"options": {
|
|
16
|
+
"singleQuote": false
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
]
|
|
20
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Default rules for yamllint
|
|
2
|
+
extends: default
|
|
3
|
+
|
|
4
|
+
rules:
|
|
5
|
+
# 120 chars should be enough, but don't fail if a line is longer
|
|
6
|
+
line-length:
|
|
7
|
+
max: 120
|
|
8
|
+
level: warning
|
|
9
|
+
|
|
10
|
+
# accept both key:value and key: value
|
|
11
|
+
colons:
|
|
12
|
+
max-spaces-before: 0
|
|
13
|
+
max-spaces-after: -1
|
|
14
|
+
|
|
15
|
+
# don't bother me with tabs vs spaces issues
|
|
16
|
+
indentation:
|
|
17
|
+
spaces: consistent
|
|
18
|
+
indent-sequences: whatever
|
|
19
|
+
|
|
20
|
+
# allow empty values like 'key:'
|
|
21
|
+
empty-values:
|
|
22
|
+
forbid-in-block-mappings: false
|
|
23
|
+
forbid-in-flow-mappings: false
|
|
24
|
+
|
|
25
|
+
# sometimes you have to use quotes
|
|
26
|
+
quoted-strings:
|
|
27
|
+
quote-type: any
|
|
28
|
+
required: false
|
|
29
|
+
|
|
30
|
+
# allow trailing spaces in comments
|
|
31
|
+
trailing-spaces:
|
|
32
|
+
level: warning
|
|
33
|
+
|
|
34
|
+
# allow truthy values
|
|
35
|
+
truthy:
|
|
36
|
+
allowed-values: ['true', 'false', 'on', 'off', 'yes', 'no']
|
|
37
|
+
check-keys: false
|
|
38
|
+
|
|
39
|
+
# allow ! in yaml
|
|
40
|
+
comments:
|
|
41
|
+
require-starting-space: false
|
|
42
|
+
ignore-shebangs: true
|
|
43
|
+
min-spaces-from-content: 1
|
|
44
|
+
|
|
45
|
+
# brackets
|
|
46
|
+
brackets:
|
|
47
|
+
max-spaces-inside: 1
|
|
48
|
+
max-spaces-inside-empty: 0
|
|
49
|
+
|
|
50
|
+
# braces
|
|
51
|
+
braces:
|
|
52
|
+
max-spaces-inside: 1
|
|
53
|
+
max-spaces-inside-empty: 0
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# ARK Marketplace
|
|
2
|
+
|
|
3
|
+
Welcome to the ARK Marketplace - a central repository for sharing reusable ARK components across projects and teams.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The marketplace serves as a community-driven collection of:
|
|
8
|
+
|
|
9
|
+
- **Agents** - Pre-configured AI agents for specific tasks
|
|
10
|
+
- **Teams** - Multi-agent workflows and orchestration patterns
|
|
11
|
+
- **Models** - Model configurations for different providers and use cases
|
|
12
|
+
- **Tools** - Extensions that add capabilities to agents
|
|
13
|
+
- **MCP Servers** - Model Context Protocol server implementations
|
|
14
|
+
- **Queries** - Reusable query templates and patterns
|
|
15
|
+
- **Projects** - Complete, end-to-end Ark project templates and solutions
|
|
16
|
+
|
|
17
|
+
## Repository Structure
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
marketplace/
|
|
21
|
+
├── agents/ # Reusable agent definitions
|
|
22
|
+
├── teams/ # Multi-agent workflow configurations
|
|
23
|
+
├── models/ # Model configurations by provider
|
|
24
|
+
├── queries/ # Query templates and patterns
|
|
25
|
+
├── tools/ # Tool definitions and implementations
|
|
26
|
+
├── mcp-servers/ # MCP server configurations
|
|
27
|
+
├── projects/ # Complete Ark project templates and solutions
|
|
28
|
+
├── tests/ # Test configurations and utilities
|
|
29
|
+
├── scripts/ # Automation and validation scripts
|
|
30
|
+
├── docs/ # Documentation and guides
|
|
31
|
+
├── templates/ # Component creation templates
|
|
32
|
+
└── .github/ # GitHub workflows and templates
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Contributing Components
|
|
36
|
+
|
|
37
|
+
### Getting Started
|
|
38
|
+
|
|
39
|
+
1. **Fork** this repository
|
|
40
|
+
2. **Choose** the appropriate directory for your component type
|
|
41
|
+
3. **Copy** the relevant template from `templates/` directory
|
|
42
|
+
4. **Implement** your component following the guidelines
|
|
43
|
+
5. **Test** your component thoroughly
|
|
44
|
+
6. **Submit** a pull request
|
|
45
|
+
|
|
46
|
+
### Component Guidelines
|
|
47
|
+
|
|
48
|
+
#### Agents (`agents/`)
|
|
49
|
+
|
|
50
|
+
- One agent per subdirectory
|
|
51
|
+
- Include `agent.yaml` with complete agent definition
|
|
52
|
+
- Provide comprehensive `README.md` with usage examples
|
|
53
|
+
- Test with multiple model providers when possible
|
|
54
|
+
|
|
55
|
+
#### Teams (`teams/`)
|
|
56
|
+
|
|
57
|
+
- Document the workflow strategy and use cases
|
|
58
|
+
- Include example inputs and expected outputs
|
|
59
|
+
- Explain when to use this team configuration
|
|
60
|
+
- Test the complete workflow end-to-end
|
|
61
|
+
|
|
62
|
+
#### Models (`models/`)
|
|
63
|
+
|
|
64
|
+
- Organize by provider (openai/, anthropic/, etc.)
|
|
65
|
+
- Include provider-specific configurations
|
|
66
|
+
- Document capabilities, limitations, and costs
|
|
67
|
+
- Specify recommended use cases
|
|
68
|
+
|
|
69
|
+
#### Tools (`tools/`)
|
|
70
|
+
|
|
71
|
+
- Follow Ark tool specification
|
|
72
|
+
- Include source code and build instructions
|
|
73
|
+
- Provide security considerations
|
|
74
|
+
- Include comprehensive error handling
|
|
75
|
+
|
|
76
|
+
#### MCP Servers (`mcp-servers/`)
|
|
77
|
+
|
|
78
|
+
- Follow MCP protocol specifications
|
|
79
|
+
- Document all available tools and resources
|
|
80
|
+
- Include security and monitoring configurations
|
|
81
|
+
- Provide integration examples
|
|
82
|
+
|
|
83
|
+
#### Queries (`queries/`)
|
|
84
|
+
|
|
85
|
+
- Make queries parameterizable where possible
|
|
86
|
+
- Document expected inputs and outputs
|
|
87
|
+
- Specify compatible agents and teams
|
|
88
|
+
- Include usage examples
|
|
89
|
+
|
|
90
|
+
#### Projects (`projects/`)
|
|
91
|
+
|
|
92
|
+
- Provide complete, self-contained Ark project structures
|
|
93
|
+
- Include comprehensive documentation with architecture overview
|
|
94
|
+
- Specify all required dependencies (models, tools, external services)
|
|
95
|
+
- Provide clear setup and deployment instructions
|
|
96
|
+
- Include working examples and sample data where applicable
|
|
97
|
+
- Document the use case and target scenarios
|
|
98
|
+
- Follow Ark best practices for resource organization
|
|
99
|
+
- Include multiple components working together (agents, teams, tools, etc.)
|
|
100
|
+
|
|
101
|
+
### Quality Standards
|
|
102
|
+
|
|
103
|
+
All contributions must meet these standards:
|
|
104
|
+
|
|
105
|
+
- ✅ **Documentation** - Clear README with setup and usage instructions
|
|
106
|
+
- ✅ **Security** - Follow security best practices
|
|
107
|
+
- ✅ **Compatibility** - Work with latest Ark version
|
|
108
|
+
- ✅ **Examples** - Provide working usage examples
|
|
109
|
+
- ✅ **Validation** - Pass all automated validation checks
|
|
110
|
+
|
|
111
|
+
### Submission Process
|
|
112
|
+
|
|
113
|
+
1. **Create** your component following the guidelines above
|
|
114
|
+
2. **Run** validation scripts: `scripts/validate-component.sh <component-path>`
|
|
115
|
+
3. **Test** your component in a real environment
|
|
116
|
+
4. **Submit** pull request with:
|
|
117
|
+
- Clear description of the component's purpose
|
|
118
|
+
- Usage examples and test results
|
|
119
|
+
- Documentation of any dependencies
|
|
120
|
+
- Screenshots or demos if applicable
|
|
121
|
+
|
|
122
|
+
### Review Process
|
|
123
|
+
|
|
124
|
+
1. **Automated Checks** - CI pipeline validates component structure and security
|
|
125
|
+
2. **Community Review** - Other contributors provide feedback
|
|
126
|
+
3. **Maintainer Review** - Core team performs final review
|
|
127
|
+
4. **Approval** - Component is merged and becomes available
|
|
128
|
+
|
|
129
|
+
## Using Marketplace Components
|
|
130
|
+
|
|
131
|
+
### Finding Components
|
|
132
|
+
|
|
133
|
+
- Browse directories by component type
|
|
134
|
+
- Check `README.md` files for detailed descriptions
|
|
135
|
+
- Look for tags and categories in component metadata
|
|
136
|
+
- Use GitHub search to find specific functionality
|
|
137
|
+
|
|
138
|
+
### Installing Components
|
|
139
|
+
|
|
140
|
+
1. **Copy** the component files to your project
|
|
141
|
+
2. **Customize** configuration as needed
|
|
142
|
+
3. **Install** any dependencies listed in component README
|
|
143
|
+
4. **Test** the component in your environment
|
|
144
|
+
5. **Deploy** following your project's deployment process
|
|
145
|
+
|
|
146
|
+
### Component Versioning
|
|
147
|
+
|
|
148
|
+
Components follow semantic versioning:
|
|
149
|
+
|
|
150
|
+
- **Major** - Breaking changes requiring migration
|
|
151
|
+
- **Minor** - New features, backward compatible
|
|
152
|
+
- **Patch** - Bug fixes and minor improvements
|
|
153
|
+
|
|
154
|
+
## Support and Community
|
|
155
|
+
|
|
156
|
+
### Getting Help
|
|
157
|
+
|
|
158
|
+
- 📖 **Documentation** - Check `docs/` directory for guides
|
|
159
|
+
- 💬 **Discussions** - Use GitHub Discussions for questions
|
|
160
|
+
- 🐛 **Issues** - Report bugs or request features via GitHub Issues
|
|
161
|
+
- 📧 **Contact** - Reach out to maintainers for urgent matters
|
|
162
|
+
|
|
163
|
+
### Contributing Beyond Components
|
|
164
|
+
|
|
165
|
+
We welcome contributions in many forms:
|
|
166
|
+
|
|
167
|
+
- 📝 **Documentation** improvements
|
|
168
|
+
- 🧪 **Testing** and validation improvements
|
|
169
|
+
- 🔧 **Tooling** and automation enhancements
|
|
170
|
+
- 🎨 **Templates** and examples
|
|
171
|
+
- 🔍 **Reviews** and feedback on submissions
|
|
172
|
+
|
|
173
|
+
## Governance
|
|
174
|
+
|
|
175
|
+
### Maintainers
|
|
176
|
+
|
|
177
|
+
The marketplace is maintained by the core team and trusted community contributors.
|
|
178
|
+
|
|
179
|
+
### Licensing
|
|
180
|
+
|
|
181
|
+
All contributions must be compatible with the project license. By contributing, you agree to license your contributions under the same terms.
|
|
182
|
+
|
|
183
|
+
### Code of Conduct
|
|
184
|
+
|
|
185
|
+
This project follows the [Contributor Covenant Code of Conduct](CODE_OF_CONDUCT.md). Please read and follow these guidelines in all interactions.
|
|
186
|
+
|
|
187
|
+
## Quick Start
|
|
188
|
+
|
|
189
|
+
Ready to contribute? Start here:
|
|
190
|
+
|
|
191
|
+
1. **Explore** existing components for inspiration
|
|
192
|
+
2. **Choose** a template from `templates/` directory
|
|
193
|
+
3. **Read** the component-specific guidelines in `docs/`
|
|
194
|
+
4. **Create** your component following the standards
|
|
195
|
+
5. **Submit** your pull request
|
|
196
|
+
|
|
197
|
+
Thank you for contributing to the {{ .Values.projectName }} Marketplace! 🚀
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Agents Directory
|
|
2
|
+
|
|
3
|
+
This directory contains reusable agent definitions that can be shared across projects.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
Each agent should be in its own file or subdirectory (complex agents) with:
|
|
8
|
+
|
|
9
|
+
- agent.yaml (the main agent definition)
|
|
10
|
+
- README.md (documentation)
|
|
11
|
+
- examples/ (optional usage examples)
|
|
12
|
+
|
|
13
|
+
## Naming Convention
|
|
14
|
+
|
|
15
|
+
Use descriptive names that indicate the agent's purpose:
|
|
16
|
+
|
|
17
|
+
- data-analyst/
|
|
18
|
+
- code-reviewer/
|
|
19
|
+
- security-scanner/
|
|
20
|
+
- documentation-writer/
|
|
21
|
+
|
|
22
|
+
## Contributing
|
|
23
|
+
|
|
24
|
+
When contributing an agent:
|
|
25
|
+
|
|
26
|
+
1. Ensure it follows the Ark agent specification
|
|
27
|
+
2. Include comprehensive documentation
|
|
28
|
+
3. Provide usage examples
|
|
29
|
+
4. Test with multiple models when possible
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Documentation Directory
|
|
2
|
+
|
|
3
|
+
Documentation for the marketplace and its components.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
- contributing.md - Guidelines for contributors
|
|
8
|
+
- component-specs/ - Specifications for different component types
|
|
9
|
+
- best-practices/ - Development and usage best practices
|
|
10
|
+
- tutorials/ - Step-by-step guides
|
|
11
|
+
- api/ - API documentation
|
|
12
|
+
|
|
13
|
+
## Documentation Standards
|
|
14
|
+
|
|
15
|
+
1. Use clear, concise language
|
|
16
|
+
2. Include code examples
|
|
17
|
+
3. Keep documentation up-to-date
|
|
18
|
+
4. Follow markdown conventions
|
|
19
|
+
5. Include diagrams where helpful
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# MCP Servers Directory
|
|
2
|
+
|
|
3
|
+
This directory contains Model Context Protocol (MCP) server configurations and implementations.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
Each MCP server should be in its own subdirectory with:
|
|
8
|
+
|
|
9
|
+
- mcp-server.yaml (server configuration)
|
|
10
|
+
- src/ (source code if custom implementation)
|
|
11
|
+
- Dockerfile (if containerized)
|
|
12
|
+
- README.md (documentation)
|
|
13
|
+
- examples/ (usage examples)
|
|
14
|
+
|
|
15
|
+
## Naming Convention
|
|
16
|
+
|
|
17
|
+
Use descriptive names that indicate the server's purpose:
|
|
18
|
+
|
|
19
|
+
- file-system-server/
|
|
20
|
+
- database-server/
|
|
21
|
+
- api-gateway-server/
|
|
22
|
+
- knowledge-base-server/
|
|
23
|
+
|
|
24
|
+
## Contributing
|
|
25
|
+
|
|
26
|
+
When contributing an MCP server:
|
|
27
|
+
|
|
28
|
+
1. Follow MCP protocol specifications
|
|
29
|
+
2. Include security configurations
|
|
30
|
+
3. Document all available tools/resources
|
|
31
|
+
4. Provide integration examples
|
|
32
|
+
5. Include monitoring and logging setup
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Models Directory
|
|
2
|
+
|
|
3
|
+
This directory contains model configurations for different AI providers and use cases.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
Each model configuration should be:
|
|
7
|
+
- provider-specific directories (openai/, anthropic/, etc.)
|
|
8
|
+
- model-specific YAML files within each directory
|
|
9
|
+
- README.md documenting capabilities and limitations
|
|
10
|
+
|
|
11
|
+
## Naming Convention
|
|
12
|
+
Use provider and model names:
|
|
13
|
+
- openai/gpt-4.yaml
|
|
14
|
+
- anthropic/claude-3-sonnet.yaml
|
|
15
|
+
- azure/gpt-4-32k.yaml
|
|
16
|
+
- local/llama2-7b.yaml
|
|
17
|
+
|
|
18
|
+
## Contributing
|
|
19
|
+
When contributing a model configuration:
|
|
20
|
+
1. Include provider-specific settings
|
|
21
|
+
2. Document token limits and capabilities
|
|
22
|
+
3. Specify recommended use cases
|
|
23
|
+
4. Include cost considerations if applicable
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Projects Directory
|
|
2
|
+
|
|
3
|
+
This directory contains complete, reusable Ark projects that demonstrate comprehensive use cases and multi-component solutions.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
- **Full Project Templates**: Complete Ark project structures with multiple agents, teams, models, and tools working together
|
|
8
|
+
- **End-to-End Solutions**: Real-world scenarios that showcase complex workflows and integrations
|
|
9
|
+
- **Reference Implementations**: Best practices for structuring large-scale Ark deployments
|
|
10
|
+
|
|
11
|
+
## Structure Guidelines
|
|
12
|
+
|
|
13
|
+
Each project should include:
|
|
14
|
+
|
|
15
|
+
- **Complete project structure**: All necessary YAML configurations
|
|
16
|
+
- **README.md**: Detailed setup instructions, use case description, and architecture overview
|
|
17
|
+
- **Documentation**: Architecture diagrams, workflow explanations, and deployment guides
|
|
18
|
+
- **Examples**: Sample queries and expected outputs
|
|
19
|
+
- **Dependencies**: Clear list of required models, tools, and external services
|
|
20
|
+
|
|
21
|
+
## Naming Convention
|
|
22
|
+
|
|
23
|
+
Use descriptive names that indicate the use case:
|
|
24
|
+
|
|
25
|
+
- `customer-support-workflow/` - Multi-agent customer service system
|
|
26
|
+
- `research-assistant-pipeline/` - Academic research and analysis workflow
|
|
27
|
+
- `content-generation-studio/` - Creative content production system
|
|
28
|
+
|
|
29
|
+
## Project Requirements
|
|
30
|
+
|
|
31
|
+
- Each project must be self-contained and deployable
|
|
32
|
+
- Include comprehensive documentation
|
|
33
|
+
- Provide clear setup and configuration instructions
|
|
34
|
+
- Include sample data or test cases where applicable
|
|
35
|
+
- Follow Ark best practices for resource organization
|
|
36
|
+
|
|
37
|
+
## Examples
|
|
38
|
+
|
|
39
|
+
- Multi-agent workflows with specialized roles
|
|
40
|
+
- Integration with external APIs and services
|
|
41
|
+
- Complex data processing pipelines
|
|
42
|
+
- Cross-functional team collaboration scenarios
|
|
43
|
+
- Industry-specific solution templates
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Queries Directory
|
|
2
|
+
|
|
3
|
+
This directory contains reusable query templates for common use cases.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
Each query should be in its own file or subdirectory:
|
|
7
|
+
- query-name.yaml (simple queries)
|
|
8
|
+
- complex-query/ (for queries with multiple files)
|
|
9
|
+
- query.yaml
|
|
10
|
+
- README.md
|
|
11
|
+
- examples/
|
|
12
|
+
|
|
13
|
+
## Naming Convention
|
|
14
|
+
Use descriptive names that indicate the query's purpose:
|
|
15
|
+
- code-analysis.yaml
|
|
16
|
+
- data-transformation.yaml
|
|
17
|
+
- security-audit.yaml
|
|
18
|
+
- document-summarization.yaml
|
|
19
|
+
|
|
20
|
+
## Contributing
|
|
21
|
+
When contributing a query:
|
|
22
|
+
1. Make it parameterizable where possible
|
|
23
|
+
2. Include clear documentation of expected inputs
|
|
24
|
+
3. Provide example outputs
|
|
25
|
+
4. Specify compatible agents/teams
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Teams Directory
|
|
2
|
+
|
|
3
|
+
This directory contains reusable team configurations for multi-agent workflows.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
Each team should be in its own file (simple) or subdirectory (complex) with:
|
|
8
|
+
|
|
9
|
+
- team.yaml (the main team definition)
|
|
10
|
+
- README.md (documentation describing the workflow)
|
|
11
|
+
- examples/ (optional usage examples)
|
|
12
|
+
|
|
13
|
+
## Naming Convention
|
|
14
|
+
|
|
15
|
+
Use descriptive names that indicate the team's workflow:
|
|
16
|
+
|
|
17
|
+
- code-review-team/
|
|
18
|
+
- data-pipeline-team/
|
|
19
|
+
- content-creation-team/
|
|
20
|
+
- security-audit-team/
|
|
21
|
+
|
|
22
|
+
## Contributing
|
|
23
|
+
|
|
24
|
+
When contributing a team:
|
|
25
|
+
|
|
26
|
+
1. Document the team's workflow and strategy
|
|
27
|
+
2. Explain when to use this team configuration
|
|
28
|
+
3. Include examples of typical inputs and outputs
|
|
29
|
+
4. Test the team configuration thoroughly
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Tools Directory
|
|
2
|
+
|
|
3
|
+
This directory contains reusable tool definitions for extending agent capabilities.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
Each tool should be in its own subdirectory with:
|
|
8
|
+
|
|
9
|
+
- tool.yaml (the main tool definition)
|
|
10
|
+
- src/ (source code if applicable)
|
|
11
|
+
- Dockerfile (if containerized)
|
|
12
|
+
- README.md (documentation)
|
|
13
|
+
- examples/ (usage examples)
|
|
14
|
+
|
|
15
|
+
## Naming Convention
|
|
16
|
+
|
|
17
|
+
Use descriptive names that indicate the tool's function:
|
|
18
|
+
|
|
19
|
+
- file-processor/
|
|
20
|
+
- database-connector/
|
|
21
|
+
- api-client/
|
|
22
|
+
- data-validator/
|
|
23
|
+
|
|
24
|
+
## Contributing
|
|
25
|
+
|
|
26
|
+
When contributing a tool:
|
|
27
|
+
|
|
28
|
+
1. Follow the Ark tool specification
|
|
29
|
+
2. Include comprehensive documentation
|
|
30
|
+
3. Provide usage examples
|
|
31
|
+
4. Ensure proper error handling
|
|
32
|
+
5. Include security considerations
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Tool Examples Directory
|
|
2
|
+
|
|
3
|
+
This directory contains example tool implementations that can serve as templates.
|
|
4
|
+
|
|
5
|
+
Examples should demonstrate:
|
|
6
|
+
|
|
7
|
+
- Best practices for tool development
|
|
8
|
+
- Common patterns and use cases
|
|
9
|
+
- Integration with different agent types
|
|
10
|
+
- Error handling and logging
|
|
11
|
+
|
|
12
|
+
Each example should include:
|
|
13
|
+
|
|
14
|
+
- Complete source code
|
|
15
|
+
- Documentation
|
|
16
|
+
- Build instructions
|
|
17
|
+
- Testing guidelines
|