mdcontext 0.0.1 → 0.2.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/.changeset/README.md +28 -0
- package/.changeset/config.json +11 -0
- package/.claude/settings.local.json +25 -0
- package/.github/workflows/ci.yml +83 -0
- package/.github/workflows/claude-code-review.yml +44 -0
- package/.github/workflows/claude.yml +85 -0
- package/.github/workflows/release.yml +113 -0
- package/.tldrignore +112 -0
- package/BACKLOG.md +338 -0
- package/CONTRIBUTING.md +186 -0
- package/NOTES/NOTES +44 -0
- package/README.md +434 -11
- package/biome.json +36 -0
- package/cspell.config.yaml +14 -0
- package/dist/chunk-23UPXDNL.js +3044 -0
- package/dist/chunk-2W7MO2DL.js +1366 -0
- package/dist/chunk-3NUAZGMA.js +1689 -0
- package/dist/chunk-7TOWB2XB.js +366 -0
- package/dist/chunk-7XOTOADQ.js +3065 -0
- package/dist/chunk-AH2PDM2K.js +3042 -0
- package/dist/chunk-BNXWSZ63.js +3742 -0
- package/dist/chunk-BTL5DJVU.js +3222 -0
- package/dist/chunk-HDHYG7E4.js +104 -0
- package/dist/chunk-HLR4KZBP.js +3234 -0
- package/dist/chunk-IP3FRFEB.js +1045 -0
- package/dist/chunk-KHU56VDO.js +3042 -0
- package/dist/chunk-KRYIFLQR.js +88 -0
- package/dist/chunk-LBSDNLEM.js +287 -0
- package/dist/chunk-MNTQ7HCP.js +2643 -0
- package/dist/chunk-MUJELQQ6.js +1387 -0
- package/dist/chunk-MXJGMSLV.js +2199 -0
- package/dist/chunk-N6QJGC3Z.js +2636 -0
- package/dist/chunk-OBELGBPM.js +1713 -0
- package/dist/chunk-OT7R5XTA.js +3192 -0
- package/dist/chunk-P7X4RA2T.js +106 -0
- package/dist/chunk-PIDUQNC2.js +3185 -0
- package/dist/chunk-POGCDIH4.js +3187 -0
- package/dist/chunk-PSIEOQGZ.js +3043 -0
- package/dist/chunk-PVRT3IHA.js +3238 -0
- package/dist/chunk-QNN4TT23.js +1430 -0
- package/dist/chunk-RE3R45RJ.js +3042 -0
- package/dist/chunk-S7E6TFX6.js +803 -0
- package/dist/chunk-SG6GLU4U.js +1378 -0
- package/dist/chunk-SJCDV2ST.js +274 -0
- package/dist/chunk-SYE5XLF3.js +104 -0
- package/dist/chunk-T5VLYBZD.js +103 -0
- package/dist/chunk-TOQB7VWU.js +3238 -0
- package/dist/chunk-VFNMZ4ZQ.js +3228 -0
- package/dist/chunk-VVTGZNBT.js +1629 -0
- package/dist/chunk-W7Q4RFEV.js +104 -0
- package/dist/chunk-XTYYVRLO.js +3190 -0
- package/dist/chunk-Y6MDYVJD.js +3063 -0
- package/dist/cli/main.d.ts +1 -0
- package/dist/cli/main.js +5458 -0
- package/dist/index.d.ts +653 -0
- package/dist/index.js +79 -0
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.js +472 -0
- package/dist/schema-BAWSG7KY.js +22 -0
- package/dist/schema-E3QUPL26.js +20 -0
- package/dist/schema-EHL7WUT6.js +20 -0
- package/docs/019-USAGE.md +625 -0
- package/docs/020-current-implementation.md +364 -0
- package/docs/021-DOGFOODING-FINDINGS.md +175 -0
- package/docs/BACKLOG.md +80 -0
- package/docs/CONFIG.md +1123 -0
- package/docs/DESIGN.md +439 -0
- package/docs/ERRORS.md +383 -0
- package/docs/PROJECT.md +88 -0
- package/docs/ROADMAP.md +407 -0
- package/docs/summarization.md +320 -0
- package/docs/test-links.md +9 -0
- package/justfile +40 -0
- package/package.json +74 -9
- package/pnpm-workspace.yaml +5 -0
- package/research/INDEX.md +315 -0
- package/research/code-review/README.md +90 -0
- package/research/code-review/cli-error-handling-review.md +979 -0
- package/research/code-review/code-review-validation-report.md +464 -0
- package/research/code-review/main-ts-review.md +1128 -0
- package/research/config-analysis/01-current-implementation.md +470 -0
- package/research/config-analysis/02-strategy-recommendation.md +428 -0
- package/research/config-analysis/03-task-candidates.md +715 -0
- package/research/config-analysis/033-research-configuration-management.md +828 -0
- package/research/config-analysis/034-research-effect-cli-config.md +1504 -0
- package/research/config-analysis/04-consolidated-task-candidates.md +277 -0
- package/research/config-docs/SUMMARY.md +357 -0
- package/research/config-docs/TEST-RESULTS.md +776 -0
- package/research/config-docs/TODO.md +542 -0
- package/research/config-docs/analysis.md +744 -0
- package/research/config-docs/fix-validation.md +502 -0
- package/research/config-docs/help-audit.md +264 -0
- package/research/config-docs/help-system-analysis.md +890 -0
- package/research/dogfood/consolidated-tool-evaluation.md +373 -0
- package/research/dogfood/strategy-a/a-synthesis.md +184 -0
- package/research/dogfood/strategy-a/a1-docs.md +226 -0
- package/research/dogfood/strategy-a/a2-amorphic.md +156 -0
- package/research/dogfood/strategy-a/a3-llm.md +164 -0
- package/research/dogfood/strategy-b/b-synthesis.md +228 -0
- package/research/dogfood/strategy-b/b1-architecture.md +207 -0
- package/research/dogfood/strategy-b/b2-gaps.md +258 -0
- package/research/dogfood/strategy-b/b3-workflows.md +250 -0
- package/research/dogfood/strategy-c/c-synthesis.md +451 -0
- package/research/dogfood/strategy-c/c1-explorer.md +192 -0
- package/research/dogfood/strategy-c/c2-diver-memory.md +145 -0
- package/research/dogfood/strategy-c/c3-diver-control.md +148 -0
- package/research/dogfood/strategy-c/c4-diver-failure.md +151 -0
- package/research/dogfood/strategy-c/c5-diver-execution.md +221 -0
- package/research/dogfood/strategy-c/c6-diver-org.md +221 -0
- package/research/effect-cli-error-handling.md +845 -0
- package/research/effect-errors-as-values.md +943 -0
- package/research/errors-task-analysis/00-consolidated-tasks.md +207 -0
- package/research/errors-task-analysis/cli-commands-analysis.md +909 -0
- package/research/errors-task-analysis/embeddings-analysis.md +709 -0
- package/research/errors-task-analysis/index-search-analysis.md +812 -0
- package/research/frontmatter/COMMENTS-ARE-SKIPPED.md +149 -0
- package/research/frontmatter/LLM-CODE-NAVIGATION.md +276 -0
- package/research/issue-review.md +603 -0
- package/research/llm-summarization/agent-cli-tools-2026.md +1082 -0
- package/research/llm-summarization/alternative-providers-2026.md +1428 -0
- package/research/llm-summarization/anthropic-2026.md +367 -0
- package/research/llm-summarization/claude-cli-integration.md +1706 -0
- package/research/llm-summarization/cli-integration-patterns.md +3155 -0
- package/research/llm-summarization/openai-2026.md +473 -0
- package/research/llm-summarization/openai-compatible-providers-2026.md +1022 -0
- package/research/llm-summarization/opencode-cli-integration.md +1552 -0
- package/research/llm-summarization/prompt-engineering-2026.md +1426 -0
- package/research/llm-summarization/prototype-results.md +56 -0
- package/research/llm-summarization/provider-switching-patterns-2026.md +2153 -0
- package/research/llm-summarization/typescript-llm-libraries-2026.md +2436 -0
- package/research/mdcontext-error-analysis.md +521 -0
- package/research/mdcontext-pudding/00-EXECUTIVE-SUMMARY.md +282 -0
- package/research/mdcontext-pudding/01-index-embed.md +956 -0
- package/research/mdcontext-pudding/02-search-COMMANDS.md +142 -0
- package/research/mdcontext-pudding/02-search-SUMMARY.md +146 -0
- package/research/mdcontext-pudding/02-search.md +970 -0
- package/research/mdcontext-pudding/03-context.md +779 -0
- package/research/mdcontext-pudding/04-navigation-and-analytics.md +803 -0
- package/research/mdcontext-pudding/04-tree.md +704 -0
- package/research/mdcontext-pudding/05-config.md +1038 -0
- package/research/mdcontext-pudding/06-links-summary.txt +87 -0
- package/research/mdcontext-pudding/06-links.md +679 -0
- package/research/mdcontext-pudding/07-stats.md +693 -0
- package/research/mdcontext-pudding/BUG-FIX-PLAN.md +388 -0
- package/research/mdcontext-pudding/P0-BUG-VALIDATION.md +167 -0
- package/research/mdcontext-pudding/README.md +168 -0
- package/research/mdcontext-pudding/TESTING-SUMMARY.md +128 -0
- package/research/npm_publish/011-npm-workflow-research-agent2.md +792 -0
- package/research/npm_publish/012-npm-workflow-research-agent1.md +530 -0
- package/research/npm_publish/013-npm-workflow-research-agent3.md +722 -0
- package/research/npm_publish/014-npm-workflow-synthesis.md +556 -0
- package/research/npm_publish/031-npm-workflow-task-analysis.md +134 -0
- package/research/research-quality-review.md +834 -0
- package/research/semantic-search/002-research-embedding-models.md +490 -0
- package/research/semantic-search/003-research-rag-alternatives.md +523 -0
- package/research/semantic-search/004-research-vector-search.md +841 -0
- package/research/semantic-search/032-research-semantic-search.md +427 -0
- package/research/semantic-search/embedding-text-analysis.md +156 -0
- package/research/semantic-search/multi-word-failure-reproduction.md +171 -0
- package/research/semantic-search/query-processing-analysis.md +207 -0
- package/research/semantic-search/root-cause-and-solution.md +114 -0
- package/research/semantic-search/threshold-validation-report.md +69 -0
- package/research/semantic-search/vector-search-analysis.md +63 -0
- package/research/task-management-2026/00-synthesis-recommendations.md +295 -0
- package/research/task-management-2026/01-ai-workflow-tools.md +416 -0
- package/research/task-management-2026/02-agent-framework-patterns.md +476 -0
- package/research/task-management-2026/03-lightweight-file-based.md +567 -0
- package/research/task-management-2026/04-established-tools-ai-features.md +541 -0
- package/research/task-management-2026/linear/01-core-features-workflow.md +771 -0
- package/research/task-management-2026/linear/02-api-integrations.md +930 -0
- package/research/task-management-2026/linear/03-ai-features.md +368 -0
- package/research/task-management-2026/linear/04-pricing-setup.md +205 -0
- package/research/task-management-2026/linear/05-usage-patterns-best-practices.md +605 -0
- package/research/test-path-issues.md +276 -0
- package/review/ALP-76/1-error-type-design.md +962 -0
- package/review/ALP-76/2-error-handling-patterns.md +906 -0
- package/review/ALP-76/3-error-presentation.md +624 -0
- package/review/ALP-76/4-test-coverage.md +625 -0
- package/review/ALP-76/5-migration-completeness.md +440 -0
- package/review/ALP-76/6-effect-best-practices.md +755 -0
- package/scripts/apply-branch-protection.sh +47 -0
- package/scripts/branch-protection-templates.json +79 -0
- package/scripts/prototype-summarization.ts +346 -0
- package/scripts/rebuild-hnswlib.js +58 -0
- package/scripts/setup-branch-protection.sh +64 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/active-provider.json +7 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/bm25.json +541 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/bm25.meta.json +5 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/config.json +8 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/embeddings/openai_text-embedding-3-small_512/vectors.bin +0 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/embeddings/openai_text-embedding-3-small_512/vectors.meta.bin +0 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/indexes/documents.json +60 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/indexes/links.json +13 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/.mdcontext/indexes/sections.json +1197 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/configuration-management.md +99 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/distributed-systems.md +92 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/error-handling.md +78 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/failure-automation.md +55 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/job-context.md +69 -0
- package/src/__tests__/fixtures/semantic-search/multi-word-corpus/process-orchestration.md +99 -0
- package/src/cli/argv-preprocessor.test.ts +210 -0
- package/src/cli/argv-preprocessor.ts +202 -0
- package/src/cli/cli.test.ts +627 -0
- package/src/cli/commands/backlinks.ts +54 -0
- package/src/cli/commands/config-cmd.ts +642 -0
- package/src/cli/commands/context.ts +285 -0
- package/src/cli/commands/duplicates.ts +122 -0
- package/src/cli/commands/embeddings.ts +529 -0
- package/src/cli/commands/index-cmd.ts +480 -0
- package/src/cli/commands/index.ts +16 -0
- package/src/cli/commands/links.ts +52 -0
- package/src/cli/commands/search.ts +1281 -0
- package/src/cli/commands/stats.ts +149 -0
- package/src/cli/commands/tree.ts +128 -0
- package/src/cli/config-layer.ts +176 -0
- package/src/cli/error-handler.test.ts +235 -0
- package/src/cli/error-handler.ts +655 -0
- package/src/cli/flag-schemas.ts +341 -0
- package/src/cli/help.ts +588 -0
- package/src/cli/index.ts +9 -0
- package/src/cli/main.ts +435 -0
- package/src/cli/options.ts +41 -0
- package/src/cli/shared-error-handling.ts +199 -0
- package/src/cli/typo-suggester.test.ts +105 -0
- package/src/cli/typo-suggester.ts +130 -0
- package/src/cli/utils.ts +259 -0
- package/src/config/file-provider.test.ts +320 -0
- package/src/config/file-provider.ts +273 -0
- package/src/config/index.ts +72 -0
- package/src/config/integration.test.ts +667 -0
- package/src/config/precedence.test.ts +277 -0
- package/src/config/precedence.ts +451 -0
- package/src/config/schema.test.ts +414 -0
- package/src/config/schema.ts +603 -0
- package/src/config/service.test.ts +320 -0
- package/src/config/service.ts +243 -0
- package/src/config/testing.test.ts +264 -0
- package/src/config/testing.ts +110 -0
- package/src/core/index.ts +1 -0
- package/src/core/types.ts +113 -0
- package/src/duplicates/detector.test.ts +183 -0
- package/src/duplicates/detector.ts +414 -0
- package/src/duplicates/index.ts +18 -0
- package/src/embeddings/embedding-namespace.test.ts +300 -0
- package/src/embeddings/embedding-namespace.ts +947 -0
- package/src/embeddings/heading-boost.test.ts +222 -0
- package/src/embeddings/hnsw-build-options.test.ts +198 -0
- package/src/embeddings/hyde.test.ts +272 -0
- package/src/embeddings/hyde.ts +264 -0
- package/src/embeddings/index.ts +10 -0
- package/src/embeddings/openai-provider.ts +414 -0
- package/src/embeddings/pricing.json +22 -0
- package/src/embeddings/provider-constants.ts +204 -0
- package/src/embeddings/provider-errors.test.ts +967 -0
- package/src/embeddings/provider-errors.ts +565 -0
- package/src/embeddings/provider-factory.test.ts +240 -0
- package/src/embeddings/provider-factory.ts +225 -0
- package/src/embeddings/provider-integration.test.ts +788 -0
- package/src/embeddings/query-preprocessing.test.ts +187 -0
- package/src/embeddings/semantic-search-threshold.test.ts +508 -0
- package/src/embeddings/semantic-search.ts +1270 -0
- package/src/embeddings/types.ts +359 -0
- package/src/embeddings/vector-store.ts +708 -0
- package/src/embeddings/voyage-provider.ts +313 -0
- package/src/errors/errors.test.ts +845 -0
- package/src/errors/index.ts +533 -0
- package/src/index/ignore-patterns.test.ts +354 -0
- package/src/index/ignore-patterns.ts +305 -0
- package/src/index/index.ts +4 -0
- package/src/index/indexer.ts +684 -0
- package/src/index/storage.ts +260 -0
- package/src/index/types.ts +147 -0
- package/src/index/watcher.ts +189 -0
- package/src/index.ts +30 -0
- package/src/integration/search-keyword.test.ts +678 -0
- package/src/mcp/server.ts +612 -0
- package/src/parser/index.ts +1 -0
- package/src/parser/parser.test.ts +291 -0
- package/src/parser/parser.ts +394 -0
- package/src/parser/section-filter.test.ts +277 -0
- package/src/parser/section-filter.ts +392 -0
- package/src/search/__tests__/hybrid-search.test.ts +650 -0
- package/src/search/bm25-store.ts +366 -0
- package/src/search/cross-encoder.test.ts +253 -0
- package/src/search/cross-encoder.ts +406 -0
- package/src/search/fuzzy-search.test.ts +419 -0
- package/src/search/fuzzy-search.ts +273 -0
- package/src/search/hybrid-search.ts +448 -0
- package/src/search/path-matcher.test.ts +276 -0
- package/src/search/path-matcher.ts +33 -0
- package/src/search/query-parser.test.ts +260 -0
- package/src/search/query-parser.ts +319 -0
- package/src/search/searcher.test.ts +280 -0
- package/src/search/searcher.ts +724 -0
- package/src/search/wink-bm25.d.ts +30 -0
- package/src/summarization/cli-providers/claude.ts +202 -0
- package/src/summarization/cli-providers/detection.test.ts +273 -0
- package/src/summarization/cli-providers/detection.ts +118 -0
- package/src/summarization/cli-providers/index.ts +8 -0
- package/src/summarization/cost.test.ts +139 -0
- package/src/summarization/cost.ts +102 -0
- package/src/summarization/error-handler.test.ts +127 -0
- package/src/summarization/error-handler.ts +111 -0
- package/src/summarization/index.ts +102 -0
- package/src/summarization/pipeline.test.ts +498 -0
- package/src/summarization/pipeline.ts +231 -0
- package/src/summarization/prompts.test.ts +269 -0
- package/src/summarization/prompts.ts +133 -0
- package/src/summarization/provider-factory.test.ts +396 -0
- package/src/summarization/provider-factory.ts +178 -0
- package/src/summarization/types.ts +184 -0
- package/src/summarize/budget-bugs.test.ts +620 -0
- package/src/summarize/formatters.ts +419 -0
- package/src/summarize/index.ts +20 -0
- package/src/summarize/summarizer.test.ts +275 -0
- package/src/summarize/summarizer.ts +597 -0
- package/src/summarize/verify-bugs.test.ts +238 -0
- package/src/types/huggingface-transformers.d.ts +66 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/tokens.test.ts +142 -0
- package/src/utils/tokens.ts +186 -0
- package/tests/fixtures/cli/.mdcontext/active-provider.json +7 -0
- package/tests/fixtures/cli/.mdcontext/config.json +8 -0
- package/tests/fixtures/cli/.mdcontext/embeddings/openai_text-embedding-3-small_512/vectors.bin +0 -0
- package/tests/fixtures/cli/.mdcontext/embeddings/openai_text-embedding-3-small_512/vectors.meta.bin +0 -0
- package/tests/fixtures/cli/.mdcontext/indexes/documents.json +33 -0
- package/tests/fixtures/cli/.mdcontext/indexes/links.json +12 -0
- package/tests/fixtures/cli/.mdcontext/indexes/sections.json +247 -0
- package/tests/fixtures/cli/README.md +9 -0
- package/tests/fixtures/cli/api-reference.md +11 -0
- package/tests/fixtures/cli/getting-started.md +11 -0
- package/tests/integration/embed-index.test.ts +712 -0
- package/tests/integration/search-context.test.ts +469 -0
- package/tests/integration/search-semantic.test.ts +522 -0
- package/tsconfig.json +26 -0
- package/vitest.config.ts +16 -0
- package/vitest.setup.ts +12 -0
|
@@ -0,0 +1,476 @@
|
|
|
1
|
+
# AI Agent Framework Patterns for Task Management (2026)
|
|
2
|
+
|
|
3
|
+
Research conducted: January 2026
|
|
4
|
+
|
|
5
|
+
## Executive Summary
|
|
6
|
+
|
|
7
|
+
The AI agent landscape has matured significantly, with 86% of copilot spending ($7.2B) now going to agent-based systems. Gartner predicts 40% of enterprise applications will feature task-specific AI agents by end of 2026, up from <5% in 2025. This document examines how leading frameworks handle task management, intent capture, and work coordination.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Framework Approaches
|
|
12
|
+
|
|
13
|
+
### LangChain / LangGraph
|
|
14
|
+
|
|
15
|
+
**Architecture**: Graph-based workflow orchestration with checkpointing
|
|
16
|
+
|
|
17
|
+
**Task Persistence**:
|
|
18
|
+
|
|
19
|
+
- **Short-term memory**: Managed via checkpointers that save state at every "superstep"
|
|
20
|
+
- **Long-term memory**: Integration with vector stores (Pinecone, Weaviate, Chroma) and databases (MongoDB, PostgreSQL)
|
|
21
|
+
- **Thread-based isolation**: Each conversation/task gets a unique `thread_id` for multi-tenant scenarios
|
|
22
|
+
|
|
23
|
+
**Key Features**:
|
|
24
|
+
|
|
25
|
+
- `InMemorySaver` for experimentation
|
|
26
|
+
- `SqliteSaver` for local workflows
|
|
27
|
+
- `PostgresSaver` for production (used in LangSmith)
|
|
28
|
+
- Fault tolerance: Failed nodes don't require re-running successful siblings
|
|
29
|
+
- "Time travel" capability to roll back and replay execution states
|
|
30
|
+
|
|
31
|
+
**LangMem SDK**: Dedicated long-term memory layer with episodic, semantic, and procedural memory types.
|
|
32
|
+
|
|
33
|
+
Sources: [LangChain Docs](https://docs.langchain.com/oss/python/langchain/short-term-memory), [MongoDB Blog](https://www.mongodb.com/company/blog/product-release-announcements/powering-long-term-memory-for-agents-langgraph), [LangGraph](https://www.langchain.com/langgraph)
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
### CrewAI
|
|
38
|
+
|
|
39
|
+
**Architecture**: Role-based multi-agent coordination inspired by human organizational structures
|
|
40
|
+
|
|
41
|
+
**Task Persistence**:
|
|
42
|
+
|
|
43
|
+
- **Short-term memory**: ChromaDB vector store
|
|
44
|
+
- **Task results**: SQLite for recent task outcomes
|
|
45
|
+
- **Long-term memory**: Separate SQLite table indexed by task description
|
|
46
|
+
- **Entity memory**: Vector embeddings for recognizing entities across sessions
|
|
47
|
+
|
|
48
|
+
**Coordination Model**:
|
|
49
|
+
|
|
50
|
+
- Sequential, parallel, and conditional task execution
|
|
51
|
+
- Hierarchical coordination with manager agents
|
|
52
|
+
- Senior agents can override juniors and redistribute resources
|
|
53
|
+
- Automatic planning flag generates step-by-step workflows before execution
|
|
54
|
+
|
|
55
|
+
**Observability**:
|
|
56
|
+
|
|
57
|
+
- Crew Control Plane for real-time tracing
|
|
58
|
+
- Metrics, logs, and traces unified in dashboard
|
|
59
|
+
- Project Manager Agent pattern for dependency resolution and milestone tracking
|
|
60
|
+
|
|
61
|
+
Sources: [CrewAI](https://www.crewai.com/), [CrewAI Docs](https://docs.crewai.com/en/concepts/agents), [CrewAI Planning Guide](https://www.analyticsvidhya.com/blog/2025/12/crewai-planning/)
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### AutoGPT
|
|
66
|
+
|
|
67
|
+
**Architecture**: Autonomous goal decomposition with subtask management
|
|
68
|
+
|
|
69
|
+
**Task Queue Management**:
|
|
70
|
+
|
|
71
|
+
- Redis-based task queues for concurrent request handling
|
|
72
|
+
- Custom dashboards for monitoring success rates and execution times
|
|
73
|
+
- Automatic breakdown of high-level goals into subtasks
|
|
74
|
+
|
|
75
|
+
**Memory**:
|
|
76
|
+
|
|
77
|
+
- Short-term: In-session context
|
|
78
|
+
- Long-term: Persistent storage for critical data
|
|
79
|
+
- Task decomposition as core differentiator
|
|
80
|
+
|
|
81
|
+
**Production Infrastructure** (2026):
|
|
82
|
+
|
|
83
|
+
- Secure vault systems for 15+ API keys
|
|
84
|
+
- Execution sandboxing with isolated environments
|
|
85
|
+
- Comprehensive audit logging
|
|
86
|
+
- Cost optimization: GPT-4 for planning, GPT-3.5-turbo for execution
|
|
87
|
+
|
|
88
|
+
Sources: [AutoGPT Setup Guide](https://educatecomputer.com/how-to-setup-autogpt-for-local-computer-tasks/), [IBM on AutoGPT](https://www.ibm.com/think/topics/autogpt)
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
### OpenAI Agents SDK (successor to Swarm)
|
|
93
|
+
|
|
94
|
+
**Architecture**: Lightweight, Python-first orchestration with handoffs
|
|
95
|
+
|
|
96
|
+
**Key Concepts**:
|
|
97
|
+
|
|
98
|
+
- **Routines**: Sets of instructions agents follow for specific actions
|
|
99
|
+
- **Handoffs**: Seamless transitions between specialized agents
|
|
100
|
+
- **Agent loop**: Built-in tool invocation cycle until task completion
|
|
101
|
+
|
|
102
|
+
**Task Management Features**:
|
|
103
|
+
|
|
104
|
+
- Function tools with automatic schema generation
|
|
105
|
+
- Pydantic-powered validation
|
|
106
|
+
- Sessions: Persistent memory layer within agent loops
|
|
107
|
+
- Human-in-the-loop mechanisms
|
|
108
|
+
- Horizontal and vertical multi-agent workflow support
|
|
109
|
+
|
|
110
|
+
**State Management** (2025 updates):
|
|
111
|
+
|
|
112
|
+
- Conversation state API for durable threads
|
|
113
|
+
- Connectors and MCP servers for external context
|
|
114
|
+
- Replayable state for debugging
|
|
115
|
+
|
|
116
|
+
Sources: [OpenAI Agents SDK](https://openai.github.io/openai-agents-python/), [OpenAI Swarm GitHub](https://github.com/openai/swarm), [VentureBeat on Swarm](https://venturebeat.com/ai/openais-swarm-ai-agent-framework-routines-and-handoffs)
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
### Microsoft AutoGen / Agent Framework
|
|
121
|
+
|
|
122
|
+
**Architecture**: Asynchronous, event-driven multi-agent orchestration
|
|
123
|
+
|
|
124
|
+
**Evolution**: AutoGen merged with Semantic Kernel into unified Microsoft Agent Framework
|
|
125
|
+
|
|
126
|
+
**Orchestration Patterns**:
|
|
127
|
+
|
|
128
|
+
- Sequential (GraphFlow for DAG-based execution)
|
|
129
|
+
- Concurrent (parallel agent work)
|
|
130
|
+
- GroupChat (conversational coordination)
|
|
131
|
+
- Handoff (responsibility transfer as context evolves)
|
|
132
|
+
- Magentic (manager agent with dynamic task ledger)
|
|
133
|
+
|
|
134
|
+
**Memory Management**:
|
|
135
|
+
|
|
136
|
+
- Multiple backends: in-memory, Redis, mem0
|
|
137
|
+
- Chat history buffers
|
|
138
|
+
- Summarization memory
|
|
139
|
+
- Vector store integration for RAG
|
|
140
|
+
- Sliding window memory options
|
|
141
|
+
|
|
142
|
+
**Enterprise Features** (2025-2026):
|
|
143
|
+
|
|
144
|
+
- Persistent state with error recovery
|
|
145
|
+
- Context sharing across agents
|
|
146
|
+
- Role-based access and auditability
|
|
147
|
+
- Lifecycle management
|
|
148
|
+
- Built-in observability for debugging at scale
|
|
149
|
+
|
|
150
|
+
Sources: [Microsoft Agent Framework](https://learn.microsoft.com/en-us/agent-framework/overview/agent-framework-overview), [AutoGen Research](https://www.microsoft.com/en-us/research/project/autogen/), [Microsoft Foundry Blog](https://devblogs.microsoft.com/foundry/introducing-microsoft-agent-framework-the-open-source-engine-for-agentic-ai-apps/)
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
### Claude Code / Anthropic Patterns
|
|
155
|
+
|
|
156
|
+
**Architecture**: File-system and shell-based persistence with subagent delegation
|
|
157
|
+
|
|
158
|
+
**Task Persistence Mechanisms**:
|
|
159
|
+
|
|
160
|
+
- **CLAUDE.md**: Persistent memory file for project context, preferences, and ongoing tasks
|
|
161
|
+
- **Todo lists**: Markdown files preserved during context compaction
|
|
162
|
+
- **Plans**: Markdown-based execution plans that persist across sessions
|
|
163
|
+
- **Subagents**: Specialized instances with their own system prompts and conversation history
|
|
164
|
+
|
|
165
|
+
**Key Patterns**:
|
|
166
|
+
|
|
167
|
+
- Session-based organization grouping related tasks
|
|
168
|
+
- Resource isolation preventing task interference
|
|
169
|
+
- Circuit breaker patterns with exponential backoff
|
|
170
|
+
- Resumable subagents retaining full conversation history
|
|
171
|
+
|
|
172
|
+
**Philosophy**: Filesystem provides persistent context; shell provides execution primitives.
|
|
173
|
+
|
|
174
|
+
Sources: [Claude Code Docs](https://code.claude.com/docs/en/sub-agents), [Apidog on Claude Background Tasks](https://apidog.com/blog/claude-code-background-tasks/), [Agent Design Patterns](https://rlancemartin.github.io/2026/01/09/agent_design/)
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## Common Patterns Across Frameworks
|
|
179
|
+
|
|
180
|
+
### 1. Hierarchical Memory Architecture
|
|
181
|
+
|
|
182
|
+
All major frameworks implement layered memory:
|
|
183
|
+
|
|
184
|
+
| Layer | Purpose | Typical Implementation |
|
|
185
|
+
| ----------------- | -------------------- | -------------------------------- |
|
|
186
|
+
| Working Memory | Current task state | In-memory buffers |
|
|
187
|
+
| Episodic Memory | Past interactions | SQLite, conversation logs |
|
|
188
|
+
| Semantic Memory | Learned knowledge | Vector databases |
|
|
189
|
+
| Procedural Memory | How to perform tasks | Embeddings, fine-tuned behaviors |
|
|
190
|
+
|
|
191
|
+
### 2. Checkpointing for Fault Tolerance
|
|
192
|
+
|
|
193
|
+
Every production framework now implements:
|
|
194
|
+
|
|
195
|
+
- State snapshots at execution boundaries
|
|
196
|
+
- Rollback capability for failed steps
|
|
197
|
+
- Resume without re-running successful work
|
|
198
|
+
- "Time travel" debugging
|
|
199
|
+
|
|
200
|
+
### 3. Thread-Based Isolation
|
|
201
|
+
|
|
202
|
+
Multi-tenant scenarios handled via:
|
|
203
|
+
|
|
204
|
+
- Unique thread IDs per conversation/task
|
|
205
|
+
- Separate checkpoint streams
|
|
206
|
+
- Context isolation between users/sessions
|
|
207
|
+
|
|
208
|
+
### 4. Intent Routing Pattern
|
|
209
|
+
|
|
210
|
+
From Google's multi-agent design patterns:
|
|
211
|
+
|
|
212
|
+
- Central dispatcher agent analyzes user intent
|
|
213
|
+
- Routes to specialist agents (Billing, Tech Support, etc.)
|
|
214
|
+
- Coordinator maintains context and synthesizes results
|
|
215
|
+
|
|
216
|
+
### 5. Plan-and-Execute Architecture
|
|
217
|
+
|
|
218
|
+
Cost optimization pattern gaining adoption:
|
|
219
|
+
|
|
220
|
+
- Expensive model (GPT-4, Claude) creates strategy
|
|
221
|
+
- Cheaper models (GPT-3.5, smaller LLMs) execute
|
|
222
|
+
- Reported 90% cost reduction in some deployments
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## File-Based vs Database vs API Approaches
|
|
227
|
+
|
|
228
|
+
### File-Based (Claude Code, some local agents)
|
|
229
|
+
|
|
230
|
+
**Pros**:
|
|
231
|
+
|
|
232
|
+
- Simple, human-readable
|
|
233
|
+
- Version control friendly
|
|
234
|
+
- No infrastructure dependencies
|
|
235
|
+
- Easy debugging and manual intervention
|
|
236
|
+
|
|
237
|
+
**Cons**:
|
|
238
|
+
|
|
239
|
+
- Limited querying capability
|
|
240
|
+
- No concurrent access handling
|
|
241
|
+
- Doesn't scale for enterprise
|
|
242
|
+
|
|
243
|
+
**Best For**: Developer tools, single-user workflows, prototyping
|
|
244
|
+
|
|
245
|
+
### Database-Backed (LangGraph, CrewAI, AutoGen)
|
|
246
|
+
|
|
247
|
+
**Pros**:
|
|
248
|
+
|
|
249
|
+
- ACID compliance
|
|
250
|
+
- Concurrent access
|
|
251
|
+
- Rich querying
|
|
252
|
+
- Production-ready scaling
|
|
253
|
+
|
|
254
|
+
**Cons**:
|
|
255
|
+
|
|
256
|
+
- Infrastructure complexity
|
|
257
|
+
- Requires ops expertise
|
|
258
|
+
- Migration management
|
|
259
|
+
|
|
260
|
+
**Common Choices**:
|
|
261
|
+
|
|
262
|
+
- SQLite: Local/experimental
|
|
263
|
+
- PostgreSQL: Production workloads
|
|
264
|
+
- ChromaDB/Pinecone: Vector memory
|
|
265
|
+
- Redis: Task queues, fast state
|
|
266
|
+
|
|
267
|
+
**Best For**: Production multi-tenant systems, enterprise deployments
|
|
268
|
+
|
|
269
|
+
### API-Based (Cloud services, managed platforms)
|
|
270
|
+
|
|
271
|
+
**Pros**:
|
|
272
|
+
|
|
273
|
+
- No infrastructure management
|
|
274
|
+
- Built-in scaling
|
|
275
|
+
- Cross-platform persistence
|
|
276
|
+
|
|
277
|
+
**Cons**:
|
|
278
|
+
|
|
279
|
+
- Vendor lock-in
|
|
280
|
+
- Latency concerns
|
|
281
|
+
- Cost at scale
|
|
282
|
+
|
|
283
|
+
**Examples**: LangSmith, CrewAI Cloud, AWS AgentCore Memory
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
## Integration with Traditional Project Management
|
|
288
|
+
|
|
289
|
+
### Jira Integration Patterns
|
|
290
|
+
|
|
291
|
+
**Native (Atlassian Rovo)**:
|
|
292
|
+
|
|
293
|
+
- AI workflows embedded in Jira
|
|
294
|
+
- Custom workflow creation via natural language
|
|
295
|
+
- Out-of-the-box Rovo Agents for task management
|
|
296
|
+
|
|
297
|
+
**Third-Party Integrations**:
|
|
298
|
+
|
|
299
|
+
- **Claude AI + Jira**: MCP-based connection for workflow automation
|
|
300
|
+
- **Beam AI**: AI agents perform issue creation, status updates, data extraction
|
|
301
|
+
- **CrewAI + Jira**: Automated project management via Gemini integration
|
|
302
|
+
|
|
303
|
+
**Capabilities**:
|
|
304
|
+
|
|
305
|
+
- Automated task assignment based on availability/expertise
|
|
306
|
+
- Enhanced search across tickets and documentation
|
|
307
|
+
- Automated responses to common queries
|
|
308
|
+
- Data analysis for timeline and resource insights
|
|
309
|
+
|
|
310
|
+
**Challenges**:
|
|
311
|
+
|
|
312
|
+
- OAuth 2.0 setup complexity
|
|
313
|
+
- Rate limits during high-traffic periods
|
|
314
|
+
- Not plug-and-play; requires careful planning
|
|
315
|
+
|
|
316
|
+
Sources: [Atlassian Rovo](https://www.atlassian.com/software/jira/ai), [Claude-Jira Integration](https://www.eesel.ai/blog/claude-ai-jira-integration), [Beam AI + Jira](https://beam.ai/integrations/jira)
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## What's Working
|
|
321
|
+
|
|
322
|
+
### Proven Success Patterns
|
|
323
|
+
|
|
324
|
+
1. **Persistent Memory**: The "most destabilizing upgrade" - ability to carry state across time, tasks, and people
|
|
325
|
+
2. **Bounded Workflows**: 68% of production agents use bounded rather than open-ended planning
|
|
326
|
+
3. **Multi-Agent Specialization**: Breaking tasks across specialized agents enables parallelism and modular design
|
|
327
|
+
4. **Human-in-the-Loop**: Critical for high-stakes decisions; built into all major frameworks
|
|
328
|
+
5. **Checkpointing**: Essential for long-running workflows; enables pause/resume without context loss
|
|
329
|
+
6. **Hierarchical Task Decomposition**: Planning agents delegate to execution agents
|
|
330
|
+
|
|
331
|
+
### Production Metrics That Matter
|
|
332
|
+
|
|
333
|
+
Organizations tracking three key metrics report 30% cost reductions and 35% productivity gains:
|
|
334
|
+
|
|
335
|
+
- Time saved on manual tasks
|
|
336
|
+
- Error reduction vs previous processes
|
|
337
|
+
- Throughput increase in completed workflows
|
|
338
|
+
|
|
339
|
+
---
|
|
340
|
+
|
|
341
|
+
## What's Not Working
|
|
342
|
+
|
|
343
|
+
### Common Failure Modes
|
|
344
|
+
|
|
345
|
+
1. **Silent Failures**: Agents loop endlessly, skip steps, or give confident wrong answers without obvious errors
|
|
346
|
+
2. **Data Pipeline Breaks**: Most prevalent cause of incorrect agent behavior in production
|
|
347
|
+
3. **Scaling Gap**: ~65% experimenting with agents, <25% successfully scaled to production
|
|
348
|
+
4. **Framework Abandonment**: 85% of in-depth case studies use custom implementations at scale
|
|
349
|
+
5. **Open-Ended Planning**: Fails in production; bounded workflows required
|
|
350
|
+
|
|
351
|
+
### Anti-Patterns
|
|
352
|
+
|
|
353
|
+
- Treating agents as "productivity add-ons" rather than transformation drivers
|
|
354
|
+
- Automating everything immediately instead of focusing on high-value processes
|
|
355
|
+
- Neglecting observability and audit trails
|
|
356
|
+
- Single all-purpose agents instead of specialized teams
|
|
357
|
+
- Ignoring cost optimization (frontier models for everything)
|
|
358
|
+
|
|
359
|
+
---
|
|
360
|
+
|
|
361
|
+
## Emerging Best Practices
|
|
362
|
+
|
|
363
|
+
### Architecture
|
|
364
|
+
|
|
365
|
+
1. **Composable, Narrowly-Scoped Agents**: Easier to test, reason about, and evolve
|
|
366
|
+
2. **Heterogeneous Model Architecture**: Expensive models for reasoning, cheap models for execution
|
|
367
|
+
3. **Atomic Responsibilities**: Design agents around single, well-defined tasks
|
|
368
|
+
4. **Standardized Interfaces**: MCP adoption for consistent agent-tool interaction
|
|
369
|
+
|
|
370
|
+
### Monitoring & Reliability
|
|
371
|
+
|
|
372
|
+
1. **Log Everything**: Prompts, responses, tool calls for replay and regression detection
|
|
373
|
+
2. **Track Agent Behavior**: Accuracy, drift, context relevance, cost per agent
|
|
374
|
+
3. **Reasoning Traces**: Capture decision rationale for accountability
|
|
375
|
+
4. **CI/CD Integration**: Catch drift before production
|
|
376
|
+
|
|
377
|
+
### Development Process
|
|
378
|
+
|
|
379
|
+
1. **Structured Multi-Step Reasoning**: Chain-of-thought for complex workflows
|
|
380
|
+
2. **Explicit Task Decomposition**: Don't rely on LLM to figure out structure
|
|
381
|
+
3. **Feedback Loops**: Agents review and refine before final delivery
|
|
382
|
+
4. **Document When Interfaces Stabilize**: Not before
|
|
383
|
+
|
|
384
|
+
### Governance (Critical for 2026)
|
|
385
|
+
|
|
386
|
+
1. **Real-Time Risk Management**: Not just ethical AI conversations
|
|
387
|
+
2. **Compliance Integration**: Agents touch critical business processes
|
|
388
|
+
3. **Audit Trails**: Every decision traceable
|
|
389
|
+
4. **Protocol Adoption**: MCP under Linux Foundation governance
|
|
390
|
+
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
## Protocol Maturation: MCP, ACP, A2A
|
|
394
|
+
|
|
395
|
+
The Model Context Protocol (MCP), IBM's Agent Communication Protocol (ACP), and Google's Agent-to-Agent (A2A) are consolidating under open governance:
|
|
396
|
+
|
|
397
|
+
- **MCP**: Contributed to Linux Foundation's Agentic AI Foundation
|
|
398
|
+
- **Composability Benefits**: Standardized interfaces enable agent specialization
|
|
399
|
+
- **Testing Improvements**: Narrowly scoped agents easier to verify
|
|
400
|
+
|
|
401
|
+
---
|
|
402
|
+
|
|
403
|
+
## Key Takeaways
|
|
404
|
+
|
|
405
|
+
1. **Memory is the differentiator**: Persistent context across sessions transforms agent capability
|
|
406
|
+
2. **Database-backed persistence dominates**: SQLite/PostgreSQL for state, vector stores for semantic memory
|
|
407
|
+
3. **Bounded workflows succeed**: Open-ended planning fails at scale
|
|
408
|
+
4. **Specialization beats generalization**: Multi-agent teams outperform monolithic agents
|
|
409
|
+
5. **Observability is mandatory**: You can't improve what you can't measure
|
|
410
|
+
6. **2026 is the consolidation year**: Patterns moving from lab to production, standards maturing
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## Framework Selection Guide
|
|
415
|
+
|
|
416
|
+
| Use Case | Recommended Framework |
|
|
417
|
+
| -------------------------- | ---------------------------------- |
|
|
418
|
+
| Rapid prototyping | OpenAI Agents SDK |
|
|
419
|
+
| Enterprise multi-agent | Microsoft Agent Framework |
|
|
420
|
+
| Graph-based workflows | LangGraph |
|
|
421
|
+
| Role-based team simulation | CrewAI |
|
|
422
|
+
| Developer tooling | Claude Code patterns |
|
|
423
|
+
| Autonomous goal pursuit | AutoGPT |
|
|
424
|
+
| Custom at scale | Build your own (85% of production) |
|
|
425
|
+
|
|
426
|
+
---
|
|
427
|
+
|
|
428
|
+
## References
|
|
429
|
+
|
|
430
|
+
### LangChain/LangGraph
|
|
431
|
+
|
|
432
|
+
- [Short-term Memory Docs](https://docs.langchain.com/oss/python/langchain/short-term-memory)
|
|
433
|
+
- [MongoDB Long-Term Memory](https://www.mongodb.com/company/blog/product-release-announcements/powering-long-term-memory-for-agents-langgraph)
|
|
434
|
+
- [LangGraph Persistence](https://docs.langchain.com/oss/python/langgraph/persistence)
|
|
435
|
+
- [LangMem SDK Launch](https://www.blog.langchain.com/langmem-sdk-launch/)
|
|
436
|
+
|
|
437
|
+
### CrewAI
|
|
438
|
+
|
|
439
|
+
- [CrewAI Platform](https://www.crewai.com/)
|
|
440
|
+
- [CrewAI GitHub](https://github.com/crewAIInc/crewAI)
|
|
441
|
+
- [CrewAI Planning Guide](https://www.analyticsvidhya.com/blog/2025/12/crewai-planning/)
|
|
442
|
+
|
|
443
|
+
### OpenAI
|
|
444
|
+
|
|
445
|
+
- [Agents SDK](https://openai.github.io/openai-agents-python/)
|
|
446
|
+
- [Swarm Framework](https://github.com/openai/swarm)
|
|
447
|
+
- [Developer Updates 2025](https://developers.openai.com/blog/openai-for-developers-2025/)
|
|
448
|
+
|
|
449
|
+
### Microsoft
|
|
450
|
+
|
|
451
|
+
- [Agent Framework Overview](https://learn.microsoft.com/en-us/agent-framework/overview/agent-framework-overview)
|
|
452
|
+
- [AutoGen Research](https://www.microsoft.com/en-us/research/project/autogen/)
|
|
453
|
+
- [Foundry Updates](https://devblogs.microsoft.com/foundry/whats-new-in-microsoft-foundry-oct-nov-2025/)
|
|
454
|
+
|
|
455
|
+
### Claude/Anthropic
|
|
456
|
+
|
|
457
|
+
- [Claude Code Subagents](https://code.claude.com/docs/en/sub-agents)
|
|
458
|
+
- [Agent Design Patterns](https://rlancemartin.github.io/2026/01/09/agent_design/)
|
|
459
|
+
|
|
460
|
+
### Multi-Agent Patterns
|
|
461
|
+
|
|
462
|
+
- [Google's Eight Patterns](https://www.infoq.com/news/2026/01/multi-agent-design-patterns/)
|
|
463
|
+
- [Multi-Agent Systems 2026 Guide](https://dev.to/eira-wexford/how-to-build-multi-agent-systems-complete-2026-guide-1io6)
|
|
464
|
+
- [Agent Orchestration 2026](https://iterathon.tech/blog/ai-agent-orchestration-frameworks-2026)
|
|
465
|
+
|
|
466
|
+
### Best Practices & Trends
|
|
467
|
+
|
|
468
|
+
- [Enterprise Implementation Guide](https://onereach.ai/blog/best-practices-for-ai-agent-implementations/)
|
|
469
|
+
- [AI Agent Monitoring](https://uptimerobot.com/knowledge-hub/monitoring/ai-agent-monitoring-best-practices-tools-and-metrics/)
|
|
470
|
+
- [Agentic AI Trends 2026](https://machinelearningmastery.com/7-agentic-ai-trends-to-watch-in-2026/)
|
|
471
|
+
- [Production Agents Study](https://medium.com/generative-ai-revolution-ai-native-transformation/the-first-production-ai-agents-study-reveals-why-agentic-engineering-becomes-mandatory-in-2026-ec5e00514e5e)
|
|
472
|
+
|
|
473
|
+
### Jira Integration
|
|
474
|
+
|
|
475
|
+
- [Atlassian Rovo](https://www.atlassian.com/software/jira/ai)
|
|
476
|
+
- [Claude-Jira Integration](https://www.eesel.ai/blog/claude-ai-jira-integration)
|