@bluefly/openstandardagents 0.4.9 → 0.5.0
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/.version.json +3 -3
- package/CHANGELOG.md +8 -8
- package/README.md +68 -58
- package/bin/postinstall +0 -0
- package/dist/.version.json +3 -3
- package/dist/adapters/claude-code/adapter.js +2 -2
- package/dist/adapters/docker/generators.js +19 -19
- package/dist/adapters/drupal/generator.js +76 -76
- package/dist/adapters/openai-agents/adapter.js +2 -2
- package/dist/cli/schema-driven/schema-loader.js +5 -5
- package/dist/mcp-server/__tests__/mcp-server.spec.js +20 -11
- package/dist/mcp-server/index.js +0 -0
- package/dist/package.json +24 -11
- package/dist/services/export/langchain/langchain-exporter.js +2 -2
- package/dist/services/export/langchain/memory-generator.js +2 -2
- package/dist/services/export/testing/test-generator.js +1 -1
- package/dist/services/taxonomy-service.d.ts +3 -3
- package/dist/skills/test-skill/package.json +1 -1
- package/dist/spec/extensions/role-manifest.md +188 -0
- package/dist/spec/v0.4/extensions/mcp/README.md +1 -1
- package/dist/spec/v0.5/agent.schema.json +2 -1
- package/dist/spec/v0.5/extensions/mcp/README.md +1 -1
- package/dist/spec/v0.5/role.schema.json +268 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +2 -0
- package/dist/types/role.d.ts +126 -0
- package/dist/types/role.js +38 -0
- package/dist/validation/validator.js +1 -1
- package/examples/agents/01-customer-support-bot/agent.ossa.yaml +24 -31
- package/examples/agents/05-sales-assistant/agent.ossa.yaml +35 -23
- package/examples/agents/07-research-assistant/agent.ossa.yaml +27 -21
- package/examples/agents/10-meeting-assistant/agent.ossa.yaml +27 -35
- package/examples/agents/security-audit-agent.ossa.yaml +234 -0
- package/examples/agentscope/react-assistant/agent.ossa.yaml +36 -32
- package/examples/drupal/content-moderator.ossa.yaml +2 -2
- package/examples/drupal/drupal-contributor.ossa.yaml +247 -0
- package/examples/export/langchain/production-agent-with-memory/README.md +1 -1
- package/examples/export/langchain/production-agent-with-memory/agent.ossa.yaml +13 -23
- package/examples/export/langchain/production-agent-with-streaming/agent.ossa.yaml +1 -15
- package/examples/export/langchain/production-agent-with-tools/agent.ossa.yaml +28 -29
- package/examples/getting-started/01-minimal-agent.ossa.yaml +1 -1
- package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
- package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
- package/examples/getting-started/04-agent-with-messaging.ossa.yaml +1 -1
- package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
- package/examples/getting-started/README.md +3 -3
- package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
- package/examples/gitlab-agents/gitlab-ci-agent.ossa.yaml +221 -0
- package/examples/hierarchical-agent.ossa.yaml +10 -53
- package/examples/kagent/ossa-kagent-anthropic.ossa.yaml +2 -25
- package/examples/kagent/ossa-kagent-mcp-tools.ossa.yaml +2 -30
- package/examples/kagent/ossa-kagent-multi-tool.ossa.yaml +2 -18
- package/examples/kagent/ossa-kagent-poc.ossa.yaml +2 -16
- package/examples/pipeline-agent.ossa.yaml +3 -3
- package/examples/platform-specific/claude-code-subagent.yaml +1 -1
- package/examples/platform-specific/cursor-coding-agent.yaml +1 -1
- package/examples/platform-specific/warp-terminal-agent.yaml +1 -1
- package/examples/production-ready/01-customer-support-bot/agent.ossa.yaml +24 -31
- package/examples/production-ready/05-sales-assistant/agent.ossa.yaml +35 -23
- package/examples/production-ready/07-research-assistant/agent.ossa.yaml +27 -19
- package/examples/production-ready/10-meeting-assistant/agent.ossa.yaml +27 -35
- package/examples/reference-implementations/python-client/examples/basic_usage.py +0 -0
- package/examples/reference-implementations/python-client/examples/publish_agent.py +0 -0
- package/examples/roles/drupal-developer.role.yaml +37 -0
- package/examples/roles/platform-operator.role.yaml +28 -0
- package/examples/roles/security-auditor.role.yaml +27 -0
- package/examples/swarm-agent.ossa.yaml +13 -51
- package/examples/team-agent.ossa.yaml +12 -61
- package/examples/team-lead-teammate.ossa.yaml +12 -17
- package/openapi/agent-communication.yaml +260 -212
- package/openapi/agent-crud.yaml +217 -187
- package/openapi/agent-discovery.yaml +119 -81
- package/openapi/agent-identity.yaml +219 -187
- package/openapi/agent-taxonomy.yaml +95 -38
- package/openapi/agents-md-service.yaml +103 -30
- package/openapi/cli/openapi.yaml +147 -40
- package/openapi/core/ossa-core-api.openapi.yaml +327 -271
- package/openapi/core/ossa-registry-api.openapi.yaml +298 -235
- package/openapi/core/ossa-registry.openapi.yaml +299 -159
- package/openapi/core/unified-agent-gateway.openapi.yaml +234 -170
- package/openapi/daemon-api.openapi.yaml +323 -181
- package/openapi/dev-cli/openapi.yaml +137 -113
- package/openapi/github-sync.yaml +62 -19
- package/openapi/marketplace-plugin.openapi.yaml +539 -466
- package/openapi/ossa-api.openapi.yaml +354 -213
- package/openapi/ossa-cli-enhancements.openapi.yaml +108 -89
- package/openapi/ossa-cli.yaml +260 -184
- package/openapi/protocols/sse-streams.yaml +66 -74
- package/openapi/protocols/websocket-events.yaml +61 -54
- package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +37 -20
- package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +35 -23
- package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +29 -18
- package/openapi/reference-implementations/critic-agent-api.openapi.yaml +45 -19
- package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +30 -24
- package/openapi/reference-implementations/drupal-agent-api.openapi.yaml +101 -50
- package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +33 -22
- package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +20 -16
- package/openapi/reference-implementations/governor-agent-api.openapi.yaml +41 -23
- package/openapi/reference-implementations/helm-generator.openapi.yaml +88 -46
- package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +30 -20
- package/openapi/reference-implementations/judge-agent-api.openapi.yaml +22 -16
- package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +32 -18
- package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +32 -21
- package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +34 -21
- package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +49 -27
- package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +27 -19
- package/openapi/reference-implementations/self-evolving-ecosystem.openapi.yaml +427 -293
- package/openapi/reference-implementations/worker-agent-api.openapi.yaml +34 -23
- package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +35 -21
- package/openapi/release-automation.openapi.yaml +47 -13
- package/openapi/schemas/common/agent.yaml +30 -29
- package/openapi/schemas/common/errors.yaml +13 -3
- package/openapi/schemas/common/metadata.yaml +22 -7
- package/openapi/schemas/common/pagination.yaml +18 -6
- package/openapi/schemas/common/security.yaml +13 -5
- package/openapi/schemas/index.yaml +49 -42
- package/openapi/uadp-asyncapi.yaml +4 -2
- package/openapi/uadp-openapi.yaml +243 -165
- package/openapi/version-management.openapi.yaml +142 -135
- package/package.json +114 -103
- package/spec/extensions/role-manifest.md +188 -0
- package/spec/v0.4/extensions/mcp/README.md +1 -1
- package/spec/v0.5/agent.schema.json +2 -1
- package/spec/v0.5/extensions/mcp/README.md +1 -1
- package/spec/v0.5/role.schema.json +268 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
apiVersion: ossa/v0.
|
|
1
|
+
apiVersion: ossa/v0.5
|
|
2
2
|
kind: Agent
|
|
3
3
|
metadata:
|
|
4
4
|
name: customer-support-bot
|
|
@@ -26,19 +26,16 @@ spec:
|
|
|
26
26
|
- Clear and concise explanations
|
|
27
27
|
- Proactive in offering solutions
|
|
28
28
|
- Transparent about limitations
|
|
29
|
-
|
|
30
29
|
llm:
|
|
31
30
|
provider: openai
|
|
32
31
|
model: gpt-4o
|
|
33
32
|
temperature: 0.7
|
|
34
33
|
maxTokens: 1500
|
|
35
|
-
|
|
36
34
|
capabilities:
|
|
37
35
|
- search_documentation
|
|
38
36
|
- create_ticket
|
|
39
37
|
- send_email
|
|
40
38
|
- conversation_memory
|
|
41
|
-
|
|
42
39
|
tools:
|
|
43
40
|
- type: function
|
|
44
41
|
name: search_docs
|
|
@@ -55,7 +52,6 @@ spec:
|
|
|
55
52
|
default: 5
|
|
56
53
|
required:
|
|
57
54
|
- query
|
|
58
|
-
|
|
59
55
|
- type: function
|
|
60
56
|
name: create_ticket
|
|
61
57
|
description: Create a support ticket for issues requiring human attention
|
|
@@ -70,7 +66,11 @@ spec:
|
|
|
70
66
|
description: Detailed description of the issue
|
|
71
67
|
priority:
|
|
72
68
|
type: string
|
|
73
|
-
enum:
|
|
69
|
+
enum:
|
|
70
|
+
- low
|
|
71
|
+
- medium
|
|
72
|
+
- high
|
|
73
|
+
- urgent
|
|
74
74
|
description: Priority level of the ticket
|
|
75
75
|
category:
|
|
76
76
|
type: string
|
|
@@ -79,7 +79,6 @@ spec:
|
|
|
79
79
|
- title
|
|
80
80
|
- description
|
|
81
81
|
- priority
|
|
82
|
-
|
|
83
82
|
- type: function
|
|
84
83
|
name: send_email
|
|
85
84
|
description: Send follow-up email to customer
|
|
@@ -98,12 +97,14 @@ spec:
|
|
|
98
97
|
template:
|
|
99
98
|
type: string
|
|
100
99
|
description: Email template to use
|
|
101
|
-
enum:
|
|
100
|
+
enum:
|
|
101
|
+
- follow_up
|
|
102
|
+
- resolution
|
|
103
|
+
- escalation
|
|
102
104
|
required:
|
|
103
105
|
- to
|
|
104
106
|
- subject
|
|
105
107
|
- body
|
|
106
|
-
|
|
107
108
|
autonomy:
|
|
108
109
|
level: supervised
|
|
109
110
|
approval_required: false
|
|
@@ -112,7 +113,6 @@ spec:
|
|
|
112
113
|
action: notify_human
|
|
113
114
|
- condition: ticket_count > 3
|
|
114
115
|
action: escalate
|
|
115
|
-
|
|
116
116
|
memory:
|
|
117
117
|
enabled: true
|
|
118
118
|
type: conversation_buffer
|
|
@@ -121,7 +121,6 @@ spec:
|
|
|
121
121
|
enabled: true
|
|
122
122
|
backend: redis
|
|
123
123
|
ttl: 86400
|
|
124
|
-
|
|
125
124
|
safety:
|
|
126
125
|
input_filters:
|
|
127
126
|
- type: pii_detection
|
|
@@ -132,8 +131,9 @@ spec:
|
|
|
132
131
|
- type: hallucination_check
|
|
133
132
|
threshold: 0.8
|
|
134
133
|
- type: tone_analysis
|
|
135
|
-
required_sentiment:
|
|
136
|
-
|
|
134
|
+
required_sentiment:
|
|
135
|
+
- positive
|
|
136
|
+
- neutral
|
|
137
137
|
observability:
|
|
138
138
|
logging:
|
|
139
139
|
level: info
|
|
@@ -150,23 +150,16 @@ spec:
|
|
|
150
150
|
tracing:
|
|
151
151
|
enabled: true
|
|
152
152
|
provider: opentelemetry
|
|
153
|
-
|
|
154
153
|
extensions:
|
|
155
154
|
langchain:
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
langchain_tool: send_email
|
|
168
|
-
tool_class: EmailTool
|
|
169
|
-
export_config:
|
|
170
|
-
format: python
|
|
171
|
-
include_dependencies: true
|
|
172
|
-
output_file: customer_support_agent.py
|
|
155
|
+
enabled: true
|
|
156
|
+
chain_type: agent
|
|
157
|
+
memory:
|
|
158
|
+
type: buffer
|
|
159
|
+
tools:
|
|
160
|
+
- name: search_docs
|
|
161
|
+
description: Search the knowledge base for relevant documentation
|
|
162
|
+
- name: create_ticket
|
|
163
|
+
description: Create a support ticket for issues requiring human attention
|
|
164
|
+
- name: send_email
|
|
165
|
+
description: Send follow-up email to customer
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
apiVersion: ossa/v0.
|
|
1
|
+
apiVersion: ossa/v0.5
|
|
2
2
|
kind: Agent
|
|
3
3
|
metadata:
|
|
4
4
|
name: sales-assistant
|
|
@@ -19,20 +19,17 @@ spec:
|
|
|
19
19
|
- Automated follow-up communication
|
|
20
20
|
- Meeting scheduling and coordination
|
|
21
21
|
- Sales pipeline management
|
|
22
|
-
|
|
23
22
|
llm:
|
|
24
23
|
provider: openai
|
|
25
24
|
model: gpt-4o
|
|
26
25
|
temperature: 0.7
|
|
27
26
|
maxTokens: 1500
|
|
28
|
-
|
|
29
27
|
capabilities:
|
|
30
28
|
- search_crm
|
|
31
29
|
- create_lead
|
|
32
30
|
- send_followup
|
|
33
31
|
- schedule_meeting
|
|
34
32
|
- update_pipeline
|
|
35
|
-
|
|
36
33
|
tools:
|
|
37
34
|
- type: function
|
|
38
35
|
name: search_crm
|
|
@@ -51,7 +48,6 @@ spec:
|
|
|
51
48
|
type: string
|
|
52
49
|
revenue_range:
|
|
53
50
|
type: string
|
|
54
|
-
|
|
55
51
|
- type: function
|
|
56
52
|
name: create_lead
|
|
57
53
|
description: Create new lead in CRM
|
|
@@ -73,7 +69,6 @@ spec:
|
|
|
73
69
|
required:
|
|
74
70
|
- name
|
|
75
71
|
- email
|
|
76
|
-
|
|
77
72
|
- type: function
|
|
78
73
|
name: send_followup
|
|
79
74
|
description: Send automated follow-up email
|
|
@@ -84,13 +79,16 @@ spec:
|
|
|
84
79
|
type: string
|
|
85
80
|
template:
|
|
86
81
|
type: string
|
|
87
|
-
enum:
|
|
82
|
+
enum:
|
|
83
|
+
- intro
|
|
84
|
+
- demo_followup
|
|
85
|
+
- pricing
|
|
86
|
+
- closing
|
|
88
87
|
personalization:
|
|
89
88
|
type: object
|
|
90
89
|
required:
|
|
91
90
|
- leadId
|
|
92
91
|
- template
|
|
93
|
-
|
|
94
92
|
- type: function
|
|
95
93
|
name: schedule_meeting
|
|
96
94
|
description: Schedule meeting with lead
|
|
@@ -101,7 +99,11 @@ spec:
|
|
|
101
99
|
type: string
|
|
102
100
|
meetingType:
|
|
103
101
|
type: string
|
|
104
|
-
enum:
|
|
102
|
+
enum:
|
|
103
|
+
- discovery
|
|
104
|
+
- demo
|
|
105
|
+
- negotiation
|
|
106
|
+
- closing
|
|
105
107
|
duration:
|
|
106
108
|
type: integer
|
|
107
109
|
suggestedTimes:
|
|
@@ -112,16 +114,23 @@ spec:
|
|
|
112
114
|
required:
|
|
113
115
|
- leadId
|
|
114
116
|
- meetingType
|
|
115
|
-
|
|
116
117
|
memory:
|
|
117
118
|
enabled: true
|
|
118
119
|
type: entity_memory
|
|
119
120
|
entities:
|
|
120
121
|
- type: lead
|
|
121
|
-
fields:
|
|
122
|
+
fields:
|
|
123
|
+
- name
|
|
124
|
+
- company
|
|
125
|
+
- status
|
|
126
|
+
- last_contact
|
|
127
|
+
- notes
|
|
122
128
|
- type: interaction
|
|
123
|
-
fields:
|
|
124
|
-
|
|
129
|
+
fields:
|
|
130
|
+
- date
|
|
131
|
+
- type
|
|
132
|
+
- summary
|
|
133
|
+
- outcome
|
|
125
134
|
observability:
|
|
126
135
|
logging:
|
|
127
136
|
level: info
|
|
@@ -132,15 +141,18 @@ spec:
|
|
|
132
141
|
- emails_sent
|
|
133
142
|
- meetings_scheduled
|
|
134
143
|
- conversion_rate
|
|
135
|
-
|
|
136
144
|
extensions:
|
|
137
145
|
langchain:
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
-
|
|
144
|
-
|
|
145
|
-
-
|
|
146
|
-
|
|
146
|
+
enabled: true
|
|
147
|
+
chain_type: agent
|
|
148
|
+
memory:
|
|
149
|
+
type: vector
|
|
150
|
+
tools:
|
|
151
|
+
- name: search_crm
|
|
152
|
+
description: Search CRM for contacts and accounts
|
|
153
|
+
- name: create_lead
|
|
154
|
+
description: Create new lead in CRM
|
|
155
|
+
- name: send_followup
|
|
156
|
+
description: Send automated follow-up email
|
|
157
|
+
- name: schedule_meeting
|
|
158
|
+
description: Schedule meeting with lead
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
apiVersion: ossa/v0.
|
|
1
|
+
apiVersion: ossa/v0.5
|
|
2
2
|
kind: Agent
|
|
3
3
|
metadata:
|
|
4
4
|
name: research-assistant
|
|
@@ -19,19 +19,16 @@ spec:
|
|
|
19
19
|
- Citation management
|
|
20
20
|
- Research question formulation
|
|
21
21
|
- Methodology analysis
|
|
22
|
-
|
|
23
22
|
llm:
|
|
24
23
|
provider: anthropic
|
|
25
24
|
model: claude-sonnet-4-20250514
|
|
26
25
|
temperature: 0.5
|
|
27
26
|
maxTokens: 4000
|
|
28
|
-
|
|
29
27
|
capabilities:
|
|
30
28
|
- search_papers
|
|
31
29
|
- summarize_paper
|
|
32
30
|
- generate_citations
|
|
33
31
|
- compare_studies
|
|
34
|
-
|
|
35
32
|
tools:
|
|
36
33
|
- type: function
|
|
37
34
|
name: search_papers
|
|
@@ -45,7 +42,11 @@ spec:
|
|
|
45
42
|
type: array
|
|
46
43
|
items:
|
|
47
44
|
type: string
|
|
48
|
-
enum:
|
|
45
|
+
enum:
|
|
46
|
+
- pubmed
|
|
47
|
+
- arxiv
|
|
48
|
+
- semantic_scholar
|
|
49
|
+
- google_scholar
|
|
49
50
|
filters:
|
|
50
51
|
type: object
|
|
51
52
|
properties:
|
|
@@ -57,7 +58,6 @@ spec:
|
|
|
57
58
|
type: number
|
|
58
59
|
required:
|
|
59
60
|
- query
|
|
60
|
-
|
|
61
61
|
- type: function
|
|
62
62
|
name: summarize_paper
|
|
63
63
|
description: Generate structured summary of research paper
|
|
@@ -68,10 +68,13 @@ spec:
|
|
|
68
68
|
type: string
|
|
69
69
|
summaryType:
|
|
70
70
|
type: string
|
|
71
|
-
enum:
|
|
71
|
+
enum:
|
|
72
|
+
- abstract
|
|
73
|
+
- full
|
|
74
|
+
- methodology
|
|
75
|
+
- findings
|
|
72
76
|
required:
|
|
73
77
|
- paperId
|
|
74
|
-
|
|
75
78
|
- type: function
|
|
76
79
|
name: generate_citations
|
|
77
80
|
description: Generate citations in various formats
|
|
@@ -84,11 +87,14 @@ spec:
|
|
|
84
87
|
type: string
|
|
85
88
|
format:
|
|
86
89
|
type: string
|
|
87
|
-
enum:
|
|
90
|
+
enum:
|
|
91
|
+
- apa
|
|
92
|
+
- mla
|
|
93
|
+
- chicago
|
|
94
|
+
- bibtex
|
|
88
95
|
required:
|
|
89
96
|
- papers
|
|
90
97
|
- format
|
|
91
|
-
|
|
92
98
|
personality:
|
|
93
99
|
name: Full-Stack Research Developer
|
|
94
100
|
tone:
|
|
@@ -132,7 +138,6 @@ spec:
|
|
|
132
138
|
response_length: moderate
|
|
133
139
|
use_bullets: true
|
|
134
140
|
use_code_blocks: true
|
|
135
|
-
|
|
136
141
|
autonomy:
|
|
137
142
|
level: autonomous
|
|
138
143
|
approval_required: false
|
|
@@ -148,7 +153,6 @@ spec:
|
|
|
148
153
|
cannot_decide:
|
|
149
154
|
- Publishing research without human review
|
|
150
155
|
- Sharing proprietary research data
|
|
151
|
-
|
|
152
156
|
memory:
|
|
153
157
|
enabled: true
|
|
154
158
|
type: summary_memory
|
|
@@ -157,7 +161,6 @@ spec:
|
|
|
157
161
|
summary_prompt: |
|
|
158
162
|
Summarize the key research topics, papers discussed,
|
|
159
163
|
and important findings from this session.
|
|
160
|
-
|
|
161
164
|
observability:
|
|
162
165
|
logging:
|
|
163
166
|
level: info
|
|
@@ -167,13 +170,16 @@ spec:
|
|
|
167
170
|
- papers_searched
|
|
168
171
|
- summaries_generated
|
|
169
172
|
- citations_created
|
|
170
|
-
|
|
171
173
|
extensions:
|
|
172
174
|
langchain:
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
-
|
|
179
|
-
|
|
175
|
+
enabled: true
|
|
176
|
+
chain_type: agent
|
|
177
|
+
memory:
|
|
178
|
+
type: summary
|
|
179
|
+
tools:
|
|
180
|
+
- name: search_papers
|
|
181
|
+
description: Search academic papers and publications
|
|
182
|
+
- name: summarize_paper
|
|
183
|
+
description: Generate structured summary of research paper
|
|
184
|
+
- name: generate_citations
|
|
185
|
+
description: Generate citations in various formats
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
apiVersion: ossa/v0.
|
|
1
|
+
apiVersion: ossa/v0.5
|
|
2
2
|
kind: Agent
|
|
3
3
|
metadata:
|
|
4
4
|
name: meeting-assistant
|
|
@@ -19,19 +19,16 @@ spec:
|
|
|
19
19
|
- Action item identification and tracking
|
|
20
20
|
- Meeting minutes generation
|
|
21
21
|
- Follow-up task creation
|
|
22
|
-
|
|
23
22
|
llm:
|
|
24
23
|
provider: openai
|
|
25
24
|
model: gpt-4o
|
|
26
25
|
temperature: 0.5
|
|
27
26
|
maxTokens: 3000
|
|
28
|
-
|
|
29
27
|
capabilities:
|
|
30
28
|
- transcribe_audio
|
|
31
29
|
- summarize_meeting
|
|
32
30
|
- extract_action_items
|
|
33
31
|
- generate_minutes
|
|
34
|
-
|
|
35
32
|
tools:
|
|
36
33
|
- type: function
|
|
37
34
|
name: transcribe_audio
|
|
@@ -50,7 +47,6 @@ spec:
|
|
|
50
47
|
default: true
|
|
51
48
|
required:
|
|
52
49
|
- audioUrl
|
|
53
|
-
|
|
54
50
|
- type: function
|
|
55
51
|
name: summarize_meeting
|
|
56
52
|
description: Generate meeting summary
|
|
@@ -61,13 +57,15 @@ spec:
|
|
|
61
57
|
type: string
|
|
62
58
|
summaryType:
|
|
63
59
|
type: string
|
|
64
|
-
enum:
|
|
60
|
+
enum:
|
|
61
|
+
- brief
|
|
62
|
+
- detailed
|
|
63
|
+
- executive
|
|
65
64
|
includeTopic:
|
|
66
65
|
type: boolean
|
|
67
66
|
default: true
|
|
68
67
|
required:
|
|
69
68
|
- transcript
|
|
70
|
-
|
|
71
69
|
- type: function
|
|
72
70
|
name: extract_action_items
|
|
73
71
|
description: Extract action items from meeting
|
|
@@ -82,7 +80,6 @@ spec:
|
|
|
82
80
|
type: string
|
|
83
81
|
required:
|
|
84
82
|
- transcript
|
|
85
|
-
|
|
86
83
|
- type: function
|
|
87
84
|
name: generate_minutes
|
|
88
85
|
description: Generate formal meeting minutes
|
|
@@ -103,19 +100,22 @@ spec:
|
|
|
103
100
|
type: array
|
|
104
101
|
format:
|
|
105
102
|
type: string
|
|
106
|
-
enum:
|
|
103
|
+
enum:
|
|
104
|
+
- markdown
|
|
105
|
+
- html
|
|
106
|
+
- pdf
|
|
107
107
|
default: markdown
|
|
108
108
|
required:
|
|
109
109
|
- meetingData
|
|
110
|
-
|
|
111
110
|
triggers:
|
|
112
111
|
- type: webhook
|
|
113
112
|
source: zoom
|
|
114
|
-
events:
|
|
113
|
+
events:
|
|
114
|
+
- recording.completed
|
|
115
115
|
- type: webhook
|
|
116
116
|
source: google_meet
|
|
117
|
-
events:
|
|
118
|
-
|
|
117
|
+
events:
|
|
118
|
+
- recording.ready
|
|
119
119
|
tasks:
|
|
120
120
|
- name: process-recording
|
|
121
121
|
steps:
|
|
@@ -125,20 +125,17 @@ spec:
|
|
|
125
125
|
params:
|
|
126
126
|
audioUrl: ${inputs.recording_url}
|
|
127
127
|
speakerDiarization: true
|
|
128
|
-
|
|
129
128
|
- name: generate-summary
|
|
130
129
|
action: function_call
|
|
131
130
|
function: summarize_meeting
|
|
132
131
|
params:
|
|
133
132
|
transcript: ${outputs.transcript}
|
|
134
133
|
summaryType: detailed
|
|
135
|
-
|
|
136
134
|
- name: extract-actions
|
|
137
135
|
action: function_call
|
|
138
136
|
function: extract_action_items
|
|
139
137
|
params:
|
|
140
138
|
transcript: ${outputs.transcript}
|
|
141
|
-
|
|
142
139
|
- name: create-minutes
|
|
143
140
|
action: function_call
|
|
144
141
|
function: generate_minutes
|
|
@@ -148,26 +145,23 @@ spec:
|
|
|
148
145
|
attendees: ${inputs.attendees}
|
|
149
146
|
topics: ${outputs.summary}
|
|
150
147
|
decisions: ${outputs.action_items}
|
|
151
|
-
|
|
152
148
|
- name: send-to-participants
|
|
153
149
|
action: http
|
|
154
150
|
method: POST
|
|
155
151
|
url: ${env.EMAIL_SERVICE_URL}/send
|
|
156
152
|
body:
|
|
157
153
|
to: ${inputs.attendees}
|
|
158
|
-
subject:
|
|
154
|
+
subject: 'Meeting Notes: ${inputs.meeting_title}'
|
|
159
155
|
body: ${outputs.minutes}
|
|
160
156
|
attachments:
|
|
161
157
|
- type: pdf
|
|
162
158
|
content: ${outputs.minutes_pdf}
|
|
163
|
-
|
|
164
159
|
memory:
|
|
165
160
|
enabled: true
|
|
166
161
|
type: conversation_buffer
|
|
167
162
|
window_size: 5
|
|
168
163
|
persistence:
|
|
169
164
|
enabled: false
|
|
170
|
-
|
|
171
165
|
outputs:
|
|
172
166
|
- name: transcript
|
|
173
167
|
type: string
|
|
@@ -181,7 +175,6 @@ spec:
|
|
|
181
175
|
- name: minutes
|
|
182
176
|
type: string
|
|
183
177
|
description: Formal meeting minutes
|
|
184
|
-
|
|
185
178
|
observability:
|
|
186
179
|
logging:
|
|
187
180
|
level: info
|
|
@@ -193,19 +186,18 @@ spec:
|
|
|
193
186
|
- action_items_extracted
|
|
194
187
|
tracing:
|
|
195
188
|
enabled: true
|
|
196
|
-
|
|
197
189
|
extensions:
|
|
198
190
|
langchain:
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
-
|
|
205
|
-
|
|
206
|
-
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
191
|
+
enabled: true
|
|
192
|
+
chain_type: agent
|
|
193
|
+
memory:
|
|
194
|
+
type: buffer
|
|
195
|
+
tools:
|
|
196
|
+
- name: transcribe_audio
|
|
197
|
+
description: Transcribe meeting audio to text
|
|
198
|
+
- name: summarize_meeting
|
|
199
|
+
description: Generate meeting summary
|
|
200
|
+
- name: extract_action_items
|
|
201
|
+
description: Extract action items from meeting
|
|
202
|
+
- name: generate_minutes
|
|
203
|
+
description: Generate formal meeting minutes
|