@agents-at-scale/ark 0.1.55 → 0.1.57

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.
Files changed (52) hide show
  1. package/dist/arkServices.js +14 -0
  2. package/dist/commands/completion/index.js +9 -6
  3. package/dist/commands/export/index.js +0 -1
  4. package/dist/commands/generate/generators/team.js +0 -1
  5. package/dist/commands/install/index.js +33 -30
  6. package/dist/commands/marketplace/index.js +18 -3
  7. package/dist/commands/models/create.js +1 -0
  8. package/dist/commands/models/kubernetes/manifest-builder.js +22 -0
  9. package/dist/commands/models/providers/anthropic.d.ts +15 -0
  10. package/dist/commands/models/providers/anthropic.js +72 -0
  11. package/dist/commands/models/providers/factory.js +3 -0
  12. package/dist/commands/models/providers/index.d.ts +3 -4
  13. package/dist/commands/models/providers/index.js +1 -0
  14. package/dist/commands/uninstall/index.js +8 -2
  15. package/dist/components/ChatUI.js +4 -17
  16. package/dist/index.js +0 -2
  17. package/dist/lib/arkApiClient.d.ts +14 -4
  18. package/dist/lib/arkApiClient.js +51 -34
  19. package/dist/lib/chatClient.d.ts +4 -6
  20. package/dist/lib/chatClient.js +136 -102
  21. package/dist/lib/errors.d.ts +0 -1
  22. package/dist/lib/errors.js +0 -1
  23. package/dist/lib/marketplaceFetcher.d.ts +1 -0
  24. package/dist/lib/marketplaceFetcher.js +17 -0
  25. package/dist/lib/types.d.ts +0 -38
  26. package/dist/marketplaceServices.d.ts +6 -1
  27. package/dist/marketplaceServices.js +19 -3
  28. package/dist/types/arkService.d.ts +1 -0
  29. package/dist/types/marketplace.d.ts +1 -1
  30. package/package.json +5 -3
  31. package/templates/marketplace/README.md +5 -194
  32. package/templates/tool/uv.lock +794 -95
  33. package/dist/commands/evaluation/index.d.ts +0 -3
  34. package/dist/commands/evaluation/index.js +0 -60
  35. package/dist/lib/executeEvaluation.d.ts +0 -16
  36. package/dist/lib/executeEvaluation.js +0 -155
  37. package/templates/marketplace/.editorconfig +0 -24
  38. package/templates/marketplace/.github/.keep +0 -11
  39. package/templates/marketplace/.github/workflows/.keep +0 -16
  40. package/templates/marketplace/.helmignore +0 -23
  41. package/templates/marketplace/.prettierrc.json +0 -20
  42. package/templates/marketplace/.yamllint.yml +0 -53
  43. package/templates/marketplace/agents/.keep +0 -29
  44. package/templates/marketplace/docs/.keep +0 -19
  45. package/templates/marketplace/marketplace.json.example +0 -59
  46. package/templates/marketplace/mcp-servers/.keep +0 -32
  47. package/templates/marketplace/models/.keep +0 -23
  48. package/templates/marketplace/projects/.keep +0 -43
  49. package/templates/marketplace/queries/.keep +0 -25
  50. package/templates/marketplace/teams/.keep +0 -29
  51. package/templates/marketplace/tools/.keep +0 -32
  52. package/templates/marketplace/tools/examples/.keep +0 -17
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- import type { ArkConfig } from '../../lib/config.js';
3
- export declare function createEvaluationCommand(_: ArkConfig): Command;
@@ -1,60 +0,0 @@
1
- import { Command } from 'commander';
2
- import chalk from 'chalk';
3
- import { executeDirectEvaluation, executeQueryEvaluation, } from '../../lib/executeEvaluation.js';
4
- import { readStdin } from '../../lib/stdin.js';
5
- export function createEvaluationCommand(_) {
6
- const evaluationCommand = new Command('evaluation');
7
- evaluationCommand
8
- .description('Execute evaluations against evaluators')
9
- .argument('<evaluator-name>', 'Name of the evaluator to use')
10
- .argument('[query-name]', 'Name of the query to evaluate (for query-based evaluation)')
11
- .option('--input <input>', 'Input text for direct evaluation')
12
- .option('--output <output>', 'Output text for direct evaluation')
13
- .option('--response-target <target>', 'Response target for query evaluation (e.g., agent:my-agent)')
14
- .option('--timeout <timeout>', 'Evaluation timeout (e.g., "30s", "5m")')
15
- .option('--watch-timeout <timeout>', 'CLI watch timeout')
16
- .action(async (evaluatorName, queryName, options) => {
17
- if (options.input && options.output) {
18
- await executeDirectEvaluation({
19
- evaluatorName,
20
- input: options.input,
21
- output: options.output,
22
- timeout: options.timeout,
23
- watchTimeout: options.watchTimeout,
24
- });
25
- }
26
- else if (queryName) {
27
- await executeQueryEvaluation({
28
- evaluatorName,
29
- queryName,
30
- responseTarget: options.responseTarget,
31
- timeout: options.timeout,
32
- watchTimeout: options.watchTimeout,
33
- });
34
- }
35
- else {
36
- const stdinQueryName = await readStdin();
37
- if (stdinQueryName) {
38
- await executeQueryEvaluation({
39
- evaluatorName,
40
- queryName: stdinQueryName,
41
- responseTarget: options.responseTarget,
42
- timeout: options.timeout,
43
- watchTimeout: options.watchTimeout,
44
- });
45
- }
46
- else {
47
- console.error(chalk.red('Error: Must provide either:'));
48
- console.error(' - --input and --output for direct evaluation');
49
- console.error(' - <query-name> for query-based evaluation');
50
- console.error(' - Pipe query name from stdin');
51
- console.error('\nExamples:');
52
- console.error(' ark evaluation my-evaluator --input "test" --output "result"');
53
- console.error(' ark evaluation my-evaluator my-query');
54
- console.error(' echo "my-query" | ark evaluation my-evaluator');
55
- process.exit(1);
56
- }
57
- }
58
- });
59
- return evaluationCommand;
60
- }
@@ -1,16 +0,0 @@
1
- export interface DirectEvaluationOptions {
2
- evaluatorName: string;
3
- input: string;
4
- output: string;
5
- timeout?: string;
6
- watchTimeout?: string;
7
- }
8
- export interface QueryEvaluationOptions {
9
- evaluatorName: string;
10
- queryName: string;
11
- responseTarget?: string;
12
- timeout?: string;
13
- watchTimeout?: string;
14
- }
15
- export declare function executeDirectEvaluation(options: DirectEvaluationOptions): Promise<void>;
16
- export declare function executeQueryEvaluation(options: QueryEvaluationOptions): Promise<void>;
@@ -1,155 +0,0 @@
1
- import { execa } from 'execa';
2
- import ora from 'ora';
3
- import chalk from 'chalk';
4
- import output from './output.js';
5
- import { ExitCodes } from './errors.js';
6
- import { parseDuration } from './duration.js';
7
- async function waitForEvaluationAndDisplayResults(evaluationName, watchTimeoutMs, watchTimeoutDisplay) {
8
- const spinner = ora('Waiting for evaluation completion...').start();
9
- try {
10
- await execa('kubectl', [
11
- 'wait',
12
- '--for=condition=Completed',
13
- `evaluation/${evaluationName}`,
14
- `--timeout=${Math.floor(watchTimeoutMs / 1000)}s`,
15
- ], { timeout: watchTimeoutMs });
16
- }
17
- catch (error) {
18
- spinner.stop();
19
- if (error instanceof Error && error.message.includes('timed out waiting')) {
20
- console.error(chalk.red(`Evaluation did not complete within ${watchTimeoutDisplay}`));
21
- process.exit(ExitCodes.Timeout);
22
- }
23
- throw error;
24
- }
25
- spinner.stop();
26
- const { stdout } = await execa('kubectl', ['get', 'evaluation', evaluationName, '-o', 'json'], { stdio: 'pipe' });
27
- const evaluation = JSON.parse(stdout);
28
- const status = evaluation.status;
29
- if (status?.phase === 'done') {
30
- console.log(chalk.green('\nEvaluation completed successfully:'));
31
- if (status.score !== undefined) {
32
- console.log(`Score: ${status.score}`);
33
- }
34
- if (status.passed !== undefined) {
35
- console.log(`Result: ${status.passed ? chalk.green('PASSED') : chalk.red('FAILED')}`);
36
- }
37
- if (status.message) {
38
- console.log(`Message: ${status.message}`);
39
- }
40
- }
41
- else if (status?.phase === 'error') {
42
- console.error(chalk.red(status.message || 'Evaluation failed with unknown error'));
43
- process.exit(ExitCodes.OperationError);
44
- }
45
- else {
46
- output.warning(`Unexpected evaluation phase: ${status?.phase}`);
47
- }
48
- }
49
- export async function executeDirectEvaluation(options) {
50
- const spinner = ora('Creating evaluation...').start();
51
- const queryTimeoutMs = options.timeout
52
- ? parseDuration(options.timeout)
53
- : parseDuration('5m');
54
- const watchTimeoutMs = options.watchTimeout
55
- ? parseDuration(options.watchTimeout)
56
- : queryTimeoutMs + 60000;
57
- const timestamp = Date.now();
58
- const evaluationName = `cli-eval-${timestamp}`;
59
- const evaluationManifest = {
60
- apiVersion: 'ark.mckinsey.com/v1alpha1',
61
- kind: 'Evaluation',
62
- metadata: {
63
- name: evaluationName,
64
- },
65
- spec: {
66
- type: 'direct',
67
- evaluator: {
68
- name: options.evaluatorName,
69
- },
70
- config: {
71
- input: options.input,
72
- output: options.output,
73
- },
74
- ...(options.timeout && { timeout: options.timeout }),
75
- ttl: '1h',
76
- },
77
- };
78
- try {
79
- spinner.text = 'Submitting evaluation...';
80
- await execa('kubectl', ['apply', '-f', '-'], {
81
- input: JSON.stringify(evaluationManifest),
82
- stdio: ['pipe', 'pipe', 'pipe'],
83
- });
84
- spinner.stop();
85
- const watchTimeoutDisplay = options.watchTimeout ?? `${Math.floor(watchTimeoutMs / 1000)}s`;
86
- await waitForEvaluationAndDisplayResults(evaluationName, watchTimeoutMs, watchTimeoutDisplay);
87
- }
88
- catch (error) {
89
- spinner.stop();
90
- console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
91
- process.exit(ExitCodes.CliError);
92
- }
93
- }
94
- export async function executeQueryEvaluation(options) {
95
- const spinner = ora('Creating evaluation...').start();
96
- const queryTimeoutMs = options.timeout
97
- ? parseDuration(options.timeout)
98
- : parseDuration('5m');
99
- const watchTimeoutMs = options.watchTimeout
100
- ? parseDuration(options.watchTimeout)
101
- : queryTimeoutMs + 60000;
102
- const timestamp = Date.now();
103
- const evaluationName = `cli-eval-${timestamp}`;
104
- let responseTarget;
105
- if (options.responseTarget) {
106
- const parts = options.responseTarget.split(':');
107
- if (parts.length === 2) {
108
- responseTarget = {
109
- type: parts[0],
110
- name: parts[1],
111
- };
112
- }
113
- else {
114
- spinner.stop();
115
- console.error(chalk.red('Invalid response-target format. Use: type:name (e.g., agent:my-agent)'));
116
- process.exit(ExitCodes.CliError);
117
- }
118
- }
119
- const evaluationManifest = {
120
- apiVersion: 'ark.mckinsey.com/v1alpha1',
121
- kind: 'Evaluation',
122
- metadata: {
123
- name: evaluationName,
124
- },
125
- spec: {
126
- type: 'query',
127
- evaluator: {
128
- name: options.evaluatorName,
129
- },
130
- config: {
131
- queryRef: {
132
- name: options.queryName,
133
- },
134
- ...(responseTarget && { responseTarget }),
135
- },
136
- ...(options.timeout && { timeout: options.timeout }),
137
- ttl: '1h',
138
- },
139
- };
140
- try {
141
- spinner.text = 'Submitting evaluation...';
142
- await execa('kubectl', ['apply', '-f', '-'], {
143
- input: JSON.stringify(evaluationManifest),
144
- stdio: ['pipe', 'pipe', 'pipe'],
145
- });
146
- spinner.stop();
147
- const watchTimeoutDisplay = options.watchTimeout ?? `${Math.floor(watchTimeoutMs / 1000)}s`;
148
- await waitForEvaluationAndDisplayResults(evaluationName, watchTimeoutMs, watchTimeoutDisplay);
149
- }
150
- catch (error) {
151
- spinner.stop();
152
- console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
153
- process.exit(ExitCodes.CliError);
154
- }
155
- }
@@ -1,24 +0,0 @@
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
@@ -1,11 +0,0 @@
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.
@@ -1,16 +0,0 @@
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
@@ -1,23 +0,0 @@
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/
@@ -1,20 +0,0 @@
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
- }
@@ -1,53 +0,0 @@
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
@@ -1,29 +0,0 @@
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
@@ -1,19 +0,0 @@
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
@@ -1,59 +0,0 @@
1
- {
2
- "version": "1.0.0",
3
- "marketplace": "ARK Marketplace",
4
- "items": [
5
- {
6
- "name": "phoenix",
7
- "displayName": "Phoenix",
8
- "description": "AI/ML observability and evaluation platform with OpenTelemetry integration",
9
- "version": "0.1.5",
10
- "author": "ARK Marketplace",
11
- "homepage": "https://github.com/mckinsey/agents-at-scale-marketplace",
12
- "repository": "https://github.com/mckinsey/agents-at-scale-marketplace",
13
- "license": "Apache-2.0",
14
- "tags": ["observability", "evaluation", "telemetry", "monitoring"],
15
- "category": "observability",
16
- "icon": "https://example.com/phoenix-icon.png",
17
- "documentation": "https://mckinsey.github.io/agents-at-scale-marketplace/services/phoenix/",
18
- "support": {
19
- "url": "https://github.com/mckinsey/agents-at-scale-marketplace/issues"
20
- },
21
- "ark": {
22
- "chartPath": "oci://ghcr.io/mckinsey/agents-at-scale-marketplace/charts/phoenix",
23
- "namespace": "phoenix",
24
- "helmReleaseName": "phoenix",
25
- "installArgs": ["--create-namespace"],
26
- "k8sServiceName": "phoenix",
27
- "k8sServicePort": 6006,
28
- "k8sDeploymentName": "phoenix"
29
- }
30
- },
31
- {
32
- "name": "langfuse",
33
- "displayName": "Langfuse",
34
- "description": "Open-source LLM observability and analytics platform with session tracking",
35
- "version": "0.1.4",
36
- "author": "ARK Marketplace",
37
- "homepage": "https://github.com/mckinsey/agents-at-scale-marketplace",
38
- "repository": "https://github.com/mckinsey/agents-at-scale-marketplace",
39
- "license": "Apache-2.0",
40
- "tags": ["observability", "analytics", "llm", "tracking"],
41
- "category": "observability",
42
- "icon": "https://example.com/langfuse-icon.png",
43
- "documentation": "https://mckinsey.github.io/agents-at-scale-marketplace/services/langfuse/",
44
- "support": {
45
- "url": "https://github.com/mckinsey/agents-at-scale-marketplace/issues"
46
- },
47
- "ark": {
48
- "chartPath": "oci://ghcr.io/mckinsey/agents-at-scale-marketplace/charts/langfuse",
49
- "namespace": "telemetry",
50
- "helmReleaseName": "langfuse",
51
- "installArgs": ["--create-namespace"],
52
- "k8sServiceName": "langfuse",
53
- "k8sServicePort": 3000,
54
- "k8sDeploymentName": "langfuse-web"
55
- }
56
- }
57
- ]
58
- }
59
-
@@ -1,32 +0,0 @@
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
@@ -1,23 +0,0 @@
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
@@ -1,43 +0,0 @@
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
@@ -1,25 +0,0 @@
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
@@ -1,29 +0,0 @@
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