argustack 0.1.11 → 0.1.14

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 (108) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/board/index.d.ts +6 -0
  3. package/dist/adapters/board/index.d.ts.map +1 -0
  4. package/dist/adapters/board/index.js +6 -0
  5. package/dist/adapters/board/index.js.map +1 -0
  6. package/dist/adapters/board/mapper.d.ts +14 -0
  7. package/dist/adapters/board/mapper.d.ts.map +1 -0
  8. package/dist/adapters/board/mapper.js +25 -0
  9. package/dist/adapters/board/mapper.js.map +1 -0
  10. package/dist/adapters/board/md-parser.d.ts +16 -0
  11. package/dist/adapters/board/md-parser.d.ts.map +1 -0
  12. package/dist/adapters/board/md-parser.js +44 -0
  13. package/dist/adapters/board/md-parser.js.map +1 -0
  14. package/dist/adapters/board/skill-discovery.d.ts +8 -0
  15. package/dist/adapters/board/skill-discovery.d.ts.map +1 -0
  16. package/dist/adapters/board/skill-discovery.js +60 -0
  17. package/dist/adapters/board/skill-discovery.js.map +1 -0
  18. package/dist/adapters/board/skill-runner.d.ts +10 -0
  19. package/dist/adapters/board/skill-runner.d.ts.map +1 -0
  20. package/dist/adapters/board/skill-runner.js +65 -0
  21. package/dist/adapters/board/skill-runner.js.map +1 -0
  22. package/dist/adapters/board/store.d.ts +21 -0
  23. package/dist/adapters/board/store.d.ts.map +1 -0
  24. package/dist/adapters/board/store.js +176 -0
  25. package/dist/adapters/board/store.js.map +1 -0
  26. package/dist/adapters/postgres/storage.d.ts +2 -1
  27. package/dist/adapters/postgres/storage.d.ts.map +1 -1
  28. package/dist/adapters/postgres/storage.js +55 -0
  29. package/dist/adapters/postgres/storage.js.map +1 -1
  30. package/dist/board/assets/index-Bnh8GW_4.css +1 -0
  31. package/dist/board/assets/index-CEXc5QXH.js +68 -0
  32. package/dist/board/favicon.png +0 -0
  33. package/dist/board/index.html +14 -0
  34. package/dist/cli/board-server.d.ts +2 -0
  35. package/dist/cli/board-server.d.ts.map +1 -0
  36. package/dist/cli/board-server.js +124 -0
  37. package/dist/cli/board-server.js.map +1 -0
  38. package/dist/cli/board.d.ts +3 -0
  39. package/dist/cli/board.d.ts.map +1 -0
  40. package/dist/cli/board.js +26 -0
  41. package/dist/cli/board.js.map +1 -0
  42. package/dist/cli/mcp-install.d.ts +9 -0
  43. package/dist/cli/mcp-install.d.ts.map +1 -1
  44. package/dist/cli/mcp-install.js +3 -3
  45. package/dist/cli/mcp-install.js.map +1 -1
  46. package/dist/core/board/board-column.value-object.d.ts +14 -0
  47. package/dist/core/board/board-column.value-object.d.ts.map +1 -0
  48. package/dist/core/board/board-column.value-object.js +36 -0
  49. package/dist/core/board/board-column.value-object.js.map +1 -0
  50. package/dist/core/board/board-task.entity.d.ts +20 -0
  51. package/dist/core/board/board-task.entity.d.ts.map +1 -0
  52. package/dist/core/board/board-task.entity.js +51 -0
  53. package/dist/core/board/board-task.entity.js.map +1 -0
  54. package/dist/core/board/index.d.ts +6 -0
  55. package/dist/core/board/index.d.ts.map +1 -0
  56. package/dist/core/board/index.js +6 -0
  57. package/dist/core/board/index.js.map +1 -0
  58. package/dist/core/board/pipeline.value-object.d.ts +22 -0
  59. package/dist/core/board/pipeline.value-object.d.ts.map +1 -0
  60. package/dist/core/board/pipeline.value-object.js +50 -0
  61. package/dist/core/board/pipeline.value-object.js.map +1 -0
  62. package/dist/core/board/skill-execution.entity.d.ts +18 -0
  63. package/dist/core/board/skill-execution.entity.d.ts.map +1 -0
  64. package/dist/core/board/skill-execution.entity.js +57 -0
  65. package/dist/core/board/skill-execution.entity.js.map +1 -0
  66. package/dist/core/board/task-title.value-object.d.ts +7 -0
  67. package/dist/core/board/task-title.value-object.d.ts.map +1 -0
  68. package/dist/core/board/task-title.value-object.js +20 -0
  69. package/dist/core/board/task-title.value-object.js.map +1 -0
  70. package/dist/core/ports/board-store.d.ts +15 -0
  71. package/dist/core/ports/board-store.d.ts.map +1 -0
  72. package/dist/core/ports/board-store.js +2 -0
  73. package/dist/core/ports/board-store.js.map +1 -0
  74. package/dist/core/ports/skill-runner.d.ts +6 -0
  75. package/dist/core/ports/skill-runner.d.ts.map +1 -0
  76. package/dist/core/ports/skill-runner.js +2 -0
  77. package/dist/core/ports/skill-runner.js.map +1 -0
  78. package/dist/core/ports/storage.d.ts +9 -1
  79. package/dist/core/ports/storage.d.ts.map +1 -1
  80. package/dist/core/types/board.d.ts +21 -0
  81. package/dist/core/types/board.d.ts.map +1 -0
  82. package/dist/core/types/board.js +2 -0
  83. package/dist/core/types/board.js.map +1 -0
  84. package/dist/core/types/index.d.ts +1 -1
  85. package/dist/core/types/index.d.ts.map +1 -1
  86. package/dist/core/types/index.js.map +1 -1
  87. package/dist/core/types/issue.d.ts +5 -0
  88. package/dist/core/types/issue.d.ts.map +1 -1
  89. package/dist/mcp/tools/formatters.d.ts +16 -0
  90. package/dist/mcp/tools/formatters.d.ts.map +1 -0
  91. package/dist/mcp/tools/formatters.js +19 -0
  92. package/dist/mcp/tools/formatters.js.map +1 -0
  93. package/dist/mcp/tools/issue.d.ts.map +1 -1
  94. package/dist/mcp/tools/issue.js +22 -32
  95. package/dist/mcp/tools/issue.js.map +1 -1
  96. package/dist/mcp/tools/search.d.ts.map +1 -1
  97. package/dist/mcp/tools/search.js +17 -20
  98. package/dist/mcp/tools/search.js.map +1 -1
  99. package/dist/use-cases/move-task.d.ts +18 -0
  100. package/dist/use-cases/move-task.d.ts.map +1 -0
  101. package/dist/use-cases/move-task.js +45 -0
  102. package/dist/use-cases/move-task.js.map +1 -0
  103. package/dist/use-cases/sync-board.d.ts +13 -0
  104. package/dist/use-cases/sync-board.d.ts.map +1 -0
  105. package/dist/use-cases/sync-board.js +20 -0
  106. package/dist/use-cases/sync-board.js.map +1 -0
  107. package/package.json +27 -3
  108. package/templates/gitignore +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/mcp/tools/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/mcp/tools/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { IBoardStore } from '../core/ports/board-store.js';
2
+ import type { ISkillRunner } from '../core/ports/skill-runner.js';
3
+ import { BoardTaskEntity } from '../core/board/board-task.entity.js';
4
+ export interface MoveTaskInput {
5
+ taskId: string;
6
+ targetColumn: string;
7
+ }
8
+ export interface MoveTaskOutput {
9
+ task: ReturnType<BoardTaskEntity['toData']>;
10
+ skillTriggered: boolean;
11
+ }
12
+ export declare class MoveTaskUseCase {
13
+ private readonly store;
14
+ private readonly skillRunner;
15
+ constructor(store: IBoardStore, skillRunner: ISkillRunner);
16
+ execute(input: MoveTaskInput, onSkillOutput?: (chunk: string) => void): Promise<MoveTaskOutput>;
17
+ }
18
+ //# sourceMappingURL=move-task.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-task.d.ts","sourceRoot":"","sources":["../../src/use-cases/move-task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAGrE,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,qBAAa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW;gBADX,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,YAAY;IAGtC,OAAO,CACX,KAAK,EAAE,aAAa,EACpB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GACtC,OAAO,CAAC,cAAc,CAAC;CAyC3B"}
@@ -0,0 +1,45 @@
1
+ import { BoardTaskEntity } from '../core/board/board-task.entity.js';
2
+ import { Pipeline } from '../core/board/pipeline.value-object.js';
3
+ export class MoveTaskUseCase {
4
+ store;
5
+ skillRunner;
6
+ constructor(store, skillRunner) {
7
+ this.store = store;
8
+ this.skillRunner = skillRunner;
9
+ }
10
+ async execute(input, onSkillOutput) {
11
+ const tasks = await this.store.getAllTasks();
12
+ const taskData = tasks.find((t) => t.id === input.taskId);
13
+ if (!taskData) {
14
+ throw new Error(`Task not found: ${input.taskId}`);
15
+ }
16
+ const pipelineConfig = await this.store.loadPipeline();
17
+ const pipeline = Pipeline.fromConfig(pipelineConfig, []);
18
+ const targetCol = pipeline.findColumn(input.targetColumn);
19
+ if (!targetCol) {
20
+ throw new Error(`Column not found: ${input.targetColumn}`);
21
+ }
22
+ const entity = BoardTaskEntity.create(taskData);
23
+ const moved = entity.moveTo(targetCol, pipeline);
24
+ await this.store.updateTask(moved.id, {
25
+ column: moved.column,
26
+ });
27
+ let skillTriggered = false;
28
+ if (targetCol.isSkill()) {
29
+ const available = await this.skillRunner.isAvailable();
30
+ if (available) {
31
+ skillTriggered = true;
32
+ const skillName = targetCol.skillName() ?? targetCol.name;
33
+ const generator = this.skillRunner.execute(skillName, [moved.toData().mdPath]);
34
+ for await (const chunk of generator) {
35
+ onSkillOutput?.(chunk);
36
+ }
37
+ }
38
+ }
39
+ return {
40
+ task: moved.toData(),
41
+ skillTriggered,
42
+ };
43
+ }
44
+ }
45
+ //# sourceMappingURL=move-task.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-task.js","sourceRoot":"","sources":["../../src/use-cases/move-task.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAYlE,MAAM,OAAO,eAAe;IAEP;IACA;IAFnB,YACmB,KAAkB,EAClB,WAAyB;QADzB,UAAK,GAAL,KAAK,CAAa;QAClB,gBAAW,GAAX,WAAW,CAAc;IACzC,CAAC;IAEJ,KAAK,CAAC,OAAO,CACX,KAAoB,EACpB,aAAuC;QAEvC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAEzD,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEjD,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE;YACpC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;QAEH,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YACvD,IAAI,SAAS,EAAE,CAAC;gBACd,cAAc,GAAG,IAAI,CAAC;gBACtB,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC;gBAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC/E,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;oBACpC,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE;YACpB,cAAc;SACf,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ import type { IBoardStore } from '../core/ports/board-store.js';
2
+ import type { BoardTaskData } from '../core/types/board.js';
3
+ import { type PipelineConfig } from '../core/board/pipeline.value-object.js';
4
+ export interface SyncBoardOutput {
5
+ tasks: BoardTaskData[];
6
+ pipeline: PipelineConfig;
7
+ }
8
+ export declare class SyncBoardUseCase {
9
+ private readonly store;
10
+ constructor(store: IBoardStore);
11
+ execute(tasksDir: string, availableSkills: string[]): Promise<SyncBoardOutput>;
12
+ }
13
+ //# sourceMappingURL=sync-board.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-board.d.ts","sourceRoot":"","sources":["../../src/use-cases/sync-board.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAEvF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,WAAW;IAEzC,OAAO,CACX,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EAAE,GACxB,OAAO,CAAC,eAAe,CAAC;CAgB5B"}
@@ -0,0 +1,20 @@
1
+ import { Pipeline } from '../core/board/pipeline.value-object.js';
2
+ export class SyncBoardUseCase {
3
+ store;
4
+ constructor(store) {
5
+ this.store = store;
6
+ }
7
+ async execute(tasksDir, availableSkills) {
8
+ await this.store.syncFromFiles(tasksDir);
9
+ const pipelineConfig = await this.store.loadPipeline();
10
+ const pipeline = Pipeline.fromConfig(pipelineConfig, availableSkills);
11
+ const updatedConfig = pipeline.toConfig(pipelineConfig.port);
12
+ await this.store.savePipeline(updatedConfig);
13
+ const tasks = await this.store.getAllTasks();
14
+ return {
15
+ tasks,
16
+ pipeline: updatedConfig,
17
+ };
18
+ }
19
+ }
20
+ //# sourceMappingURL=sync-board.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-board.js","sourceRoot":"","sources":["../../src/use-cases/sync-board.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAuB,MAAM,wCAAwC,CAAC;AAOvF,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,KAAkB;QAAlB,UAAK,GAAL,KAAK,CAAa;IAAG,CAAC;IAEnD,KAAK,CAAC,OAAO,CACX,QAAgB,EAChB,eAAyB;QAEzB,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEzC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;QAEtE,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAE7C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAE7C,OAAO;YACL,KAAK;YACL,QAAQ,EAAE,aAAa;SACxB,CAAC;IACJ,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "argustack",
3
- "version": "0.1.11",
3
+ "version": "0.1.14",
4
4
  "description": "Project analysis platform — Jira + Git + DB",
5
5
  "type": "module",
6
6
  "bin": {
@@ -11,7 +11,8 @@
11
11
  "templates/"
12
12
  ],
13
13
  "scripts": {
14
- "build": "tsc",
14
+ "build": "tsc && npm run build:board",
15
+ "build:board": "vite build --config src/board/vite.config.ts",
15
16
  "dev": "tsx src/cli/index.ts",
16
17
  "start": "node dist/cli/index.js",
17
18
  "lint": "eslint src/ tests/",
@@ -24,8 +25,22 @@
24
25
  "test:integration": "vitest run --project integration",
25
26
  "test:mcp": "vitest run --project mcp",
26
27
  "test:arch": "vitest run --project architecture",
28
+ "build:plugin": "cd plugins/jetbrains && ./gradlew buildPlugin",
29
+ "build:plugin:webview": "cd plugins/jetbrains/webview && npm run build",
30
+ "build:all": "npm run build && npm run build:plugin",
31
+ "test:plugin": "cd plugins/jetbrains && ./gradlew test",
32
+ "test:plugin:webview": "cd plugins/jetbrains/webview && npm test",
33
+ "test:all": "npm test && npm run test:plugin:webview",
34
+ "typecheck:plugin:webview": "cd plugins/jetbrains/webview && npx tsc --noEmit",
35
+ "typecheck:all": "npm run typecheck && npm run typecheck:plugin:webview",
36
+ "lint:plugin": "cd plugins/jetbrains && ./gradlew detekt",
37
+ "lint:plugin:webview": "cd plugins/jetbrains/webview && npx eslint src/",
38
+ "coverage:plugin": "cd plugins/jetbrains && ./gradlew koverReport",
39
+ "lint:all": "npm run lint && npm run lint:plugin:webview",
27
40
  "check": "npm run typecheck && npm run lint",
41
+ "check:all": "npm run typecheck:all && npm run lint:all",
28
42
  "ci": "npm run check && npm test",
43
+ "ci:all": "npm run check:all && npm run test:all",
29
44
  "prepublishOnly": "npm run ci && npm run build",
30
45
  "build:mcpb": "npm run build && bash scripts/build-mcpb.sh",
31
46
  "prepare": "husky"
@@ -46,6 +61,7 @@
46
61
  "node": ">=20"
47
62
  },
48
63
  "dependencies": {
64
+ "@hello-pangea/dnd": "^18.0.1",
49
65
  "@inquirer/prompts": "^8.3.0",
50
66
  "@modelcontextprotocol/sdk": "^1.27.1",
51
67
  "chalk": "^5.4.1",
@@ -55,22 +71,30 @@
55
71
  "es-git": "^0.6.0",
56
72
  "jira.js": "^5.3.1",
57
73
  "knex": "^3.1.0",
74
+ "mysql2": "^3.20.0",
58
75
  "octokit": "^5.0.5",
59
76
  "ora": "^9.3.0",
60
- "pg": "^8.13.1"
77
+ "pg": "^8.13.1",
78
+ "react": "^19.2.4",
79
+ "react-dom": "^19.2.4"
61
80
  },
62
81
  "devDependencies": {
63
82
  "@eslint/js": "^10.0.1",
64
83
  "@types/eslint__js": "^8.42.3",
65
84
  "@types/node": "^24.12.0",
66
85
  "@types/pg": "^8.11.10",
86
+ "@types/react": "^19.2.14",
87
+ "@types/react-dom": "^19.2.3",
88
+ "@vitejs/plugin-react": "^6.0.1",
67
89
  "@vitest/coverage-v8": "^4.0.18",
90
+ "dependency-cruiser": "^17.3.9",
68
91
  "eslint": "^10.0.3",
69
92
  "husky": "^9.1.7",
70
93
  "lint-staged": "^16.3.3",
71
94
  "tsx": "^4.19.2",
72
95
  "typescript": "^5.7.2",
73
96
  "typescript-eslint": "^8.57.0",
97
+ "vite": "^8.0.3",
74
98
  "vitest": "^4.0.18"
75
99
  }
76
100
  }
@@ -1,6 +1,7 @@
1
1
  # Argustack workspace
2
2
  .env
3
3
  .mcp.json
4
+ .kanban.json
4
5
  data/
5
6
  node_modules/
6
7
  .DS_Store