@qelos/aidev 0.2.6 → 0.2.7

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 (54) hide show
  1. package/README.md +80 -3
  2. package/dist/__tests__/ai-runners.test.js +38 -0
  3. package/dist/__tests__/ai-runners.test.js.map +1 -1
  4. package/dist/__tests__/git.test.js +76 -0
  5. package/dist/__tests__/git.test.js.map +1 -1
  6. package/dist/__tests__/init.test.js +19 -0
  7. package/dist/__tests__/init.test.js.map +1 -1
  8. package/dist/__tests__/local-provider.test.d.ts +2 -0
  9. package/dist/__tests__/local-provider.test.d.ts.map +1 -0
  10. package/dist/__tests__/local-provider.test.js +631 -0
  11. package/dist/__tests__/local-provider.test.js.map +1 -0
  12. package/dist/__tests__/run.test.js +40 -0
  13. package/dist/__tests__/run.test.js.map +1 -1
  14. package/dist/ai/windsurf.d.ts.map +1 -1
  15. package/dist/ai/windsurf.js +47 -0
  16. package/dist/ai/windsurf.js.map +1 -1
  17. package/dist/cli.js +1 -1
  18. package/dist/cli.js.map +1 -1
  19. package/dist/commands/help.d.ts.map +1 -1
  20. package/dist/commands/help.js +12 -0
  21. package/dist/commands/help.js.map +1 -1
  22. package/dist/commands/init.d.ts +1 -1
  23. package/dist/commands/init.d.ts.map +1 -1
  24. package/dist/commands/init.js +37 -20
  25. package/dist/commands/init.js.map +1 -1
  26. package/dist/commands/run.d.ts +1 -0
  27. package/dist/commands/run.d.ts.map +1 -1
  28. package/dist/commands/run.js +11 -14
  29. package/dist/commands/run.js.map +1 -1
  30. package/dist/config.d.ts.map +1 -1
  31. package/dist/config.js +5 -3
  32. package/dist/config.js.map +1 -1
  33. package/dist/git.d.ts +7 -0
  34. package/dist/git.d.ts.map +1 -1
  35. package/dist/git.js +24 -0
  36. package/dist/git.js.map +1 -1
  37. package/dist/providers/clickup.d.ts.map +1 -1
  38. package/dist/providers/clickup.js +1 -0
  39. package/dist/providers/clickup.js.map +1 -1
  40. package/dist/providers/index.d.ts +2 -1
  41. package/dist/providers/index.d.ts.map +1 -1
  42. package/dist/providers/index.js +4 -1
  43. package/dist/providers/index.js.map +1 -1
  44. package/dist/providers/jira.d.ts.map +1 -1
  45. package/dist/providers/jira.js +3 -2
  46. package/dist/providers/jira.js.map +1 -1
  47. package/dist/providers/local.d.ts +25 -0
  48. package/dist/providers/local.d.ts.map +1 -0
  49. package/dist/providers/local.js +277 -0
  50. package/dist/providers/local.js.map +1 -0
  51. package/dist/types.d.ts +1 -0
  52. package/dist/types.d.ts.map +1 -1
  53. package/package.json +1 -1
  54. package/aidev.log +0 -5572
@@ -0,0 +1,277 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.LocalProvider = void 0;
37
+ exports.tasksRoot = tasksRoot;
38
+ exports.ensureTaskFolders = ensureTaskFolders;
39
+ exports.parseFrontmatter = parseFrontmatter;
40
+ exports.renderFrontmatter = renderFrontmatter;
41
+ exports.parseSession = parseSession;
42
+ exports.renderSessionEntry = renderSessionEntry;
43
+ const fs = __importStar(require("node:fs"));
44
+ const path = __importStar(require("node:path"));
45
+ const crypto = __importStar(require("node:crypto"));
46
+ const logger_1 = require("../logger");
47
+ const TASK_FOLDERS = ['open', 'pending', 'progress', 'review', 'done'];
48
+ const STATUS_TO_FOLDER = {
49
+ 'open': 'open',
50
+ 'pending': 'pending',
51
+ 'in progress': 'progress',
52
+ 'review': 'review',
53
+ 'done': 'done',
54
+ 'closed': 'done',
55
+ 'cancelled': 'done',
56
+ 'complete': 'done',
57
+ };
58
+ const FOLDER_TO_STATUS = {
59
+ 'open': 'open',
60
+ 'pending': 'pending',
61
+ 'progress': 'in progress',
62
+ 'review': 'review',
63
+ 'done': 'done',
64
+ };
65
+ function tasksRoot(baseDir = process.cwd()) {
66
+ return path.join(baseDir, '.aidev', 'tasks');
67
+ }
68
+ function ensureTaskFolders(baseDir = process.cwd()) {
69
+ for (const folder of TASK_FOLDERS) {
70
+ fs.mkdirSync(path.join(tasksRoot(baseDir), folder), { recursive: true });
71
+ }
72
+ }
73
+ function parseFrontmatter(content) {
74
+ const match = content.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/);
75
+ if (!match)
76
+ return { meta: {}, body: content.trim() };
77
+ const meta = {};
78
+ for (const line of match[1].split(/\r?\n/)) {
79
+ const idx = line.indexOf(':');
80
+ if (idx === -1)
81
+ continue;
82
+ const key = line.slice(0, idx).trim();
83
+ const val = line.slice(idx + 1).trim();
84
+ if (key)
85
+ meta[key] = val;
86
+ }
87
+ return { meta, body: match[2].trim() };
88
+ }
89
+ function renderFrontmatter(meta, body) {
90
+ const lines = Object.entries(meta)
91
+ .filter(([, v]) => v !== '')
92
+ .map(([k, v]) => `${k}: ${v}`);
93
+ return `---\n${lines.join('\n')}\n---\n\n${body}\n`;
94
+ }
95
+ // ─── Session file parser ───────────────────────────────────────────────────────
96
+ function parseSession(content) {
97
+ if (!content.trim())
98
+ return [];
99
+ // Normalize CRLF to LF so regexes work on Windows-edited files
100
+ const normalized = content.replace(/\r\n/g, '\n');
101
+ const comments = [];
102
+ const blocks = normalized.split(/(?:^|\n)---\n/);
103
+ for (const block of blocks) {
104
+ const trimmed = block.trim();
105
+ if (!trimmed)
106
+ continue;
107
+ // Match: ## author — timestamp OR ## author
108
+ const headerMatch = trimmed.match(/^##\s+(.+?)\s+—\s+(\d{4}-\d{2}-\d{2}T[\d:.]+Z)\s*\n([\s\S]*)/);
109
+ const headerNoDate = trimmed.match(/^##\s+(.+?)\s*\n([\s\S]*)/);
110
+ let author;
111
+ let date;
112
+ let text;
113
+ if (headerMatch) {
114
+ author = headerMatch[1].trim();
115
+ date = new Date(headerMatch[2]).getTime();
116
+ text = headerMatch[3].trim();
117
+ }
118
+ else if (headerNoDate) {
119
+ author = headerNoDate[1].trim();
120
+ date = Date.now();
121
+ text = headerNoDate[2].trim();
122
+ }
123
+ else {
124
+ continue;
125
+ }
126
+ comments.push({
127
+ id: `${date}-${author}`,
128
+ text,
129
+ author,
130
+ authorId: author,
131
+ date,
132
+ });
133
+ }
134
+ return comments;
135
+ }
136
+ function renderSessionEntry(author, text) {
137
+ const ts = new Date().toISOString();
138
+ return `\n---\n\n## ${author} — ${ts}\n\n${text}\n`;
139
+ }
140
+ // ─── File helpers ──────────────────────────────────────────────────────────────
141
+ function findTaskFile(baseDir, taskId) {
142
+ for (const folder of TASK_FOLDERS) {
143
+ const dir = path.join(tasksRoot(baseDir), folder);
144
+ if (!fs.existsSync(dir))
145
+ continue;
146
+ const files = fs.readdirSync(dir);
147
+ const match = files.find((f) => f.startsWith(`${taskId}-`) && f.endsWith('.md') && !f.endsWith('.session.md'));
148
+ if (match)
149
+ return { folder, filename: match, dir };
150
+ }
151
+ return null;
152
+ }
153
+ function sessionFilename(taskFilename) {
154
+ return taskFilename.replace(/\.md$/, '.session.md');
155
+ }
156
+ function slugify(text) {
157
+ return text
158
+ .toLowerCase()
159
+ .replace(/[^a-z0-9]+/g, '-')
160
+ .replace(/^-|-$/g, '')
161
+ .slice(0, 60);
162
+ }
163
+ function shortId() {
164
+ return crypto.randomUUID().replace(/-/g, '').slice(0, 8);
165
+ }
166
+ class LocalProvider {
167
+ constructor(baseDir = process.cwd(), mode = 'code') {
168
+ this.baseDir = baseDir;
169
+ this.mode = mode;
170
+ ensureTaskFolders(this.baseDir);
171
+ }
172
+ async fetchTasks() {
173
+ logger_1.logger.debug(`Fetching ${this.mode} tasks from local .aidev/tasks folders`);
174
+ const tasks = [];
175
+ for (const folder of TASK_FOLDERS) {
176
+ const dir = path.join(tasksRoot(this.baseDir), folder);
177
+ if (!fs.existsSync(dir))
178
+ continue;
179
+ const files = fs.readdirSync(dir).filter((f) => f.endsWith('.md') && !f.endsWith('.session.md'));
180
+ for (const file of files) {
181
+ const content = fs.readFileSync(path.join(dir, file), 'utf8');
182
+ const { meta, body } = parseFrontmatter(content);
183
+ const taskType = meta.type === 'non-code' ? 'non-code' : 'code';
184
+ if (taskType !== this.mode)
185
+ continue;
186
+ const idMatch = file.match(/^([a-f0-9]+)-/);
187
+ const id = idMatch ? idMatch[1] : file.replace(/\.md$/, '');
188
+ tasks.push({
189
+ id,
190
+ name: meta.title || file.replace(/\.md$/, ''),
191
+ description: body,
192
+ status: FOLDER_TO_STATUS[folder],
193
+ url: path.join(dir, file),
194
+ tags: meta.tags ? meta.tags.split(',').map((t) => t.trim()).filter(Boolean) : [],
195
+ priority: meta.priority ? parseInt(meta.priority, 10) : undefined,
196
+ });
197
+ }
198
+ }
199
+ return tasks;
200
+ }
201
+ async postComment(taskId, text) {
202
+ logger_1.logger.debug(`Posting comment to local task ${taskId}`);
203
+ const found = findTaskFile(this.baseDir, taskId);
204
+ if (!found) {
205
+ throw new Error(`Local task not found: ${taskId}`);
206
+ }
207
+ const sessionPath = path.join(found.dir, sessionFilename(found.filename));
208
+ const entry = renderSessionEntry('aidev', text);
209
+ if (fs.existsSync(sessionPath)) {
210
+ fs.appendFileSync(sessionPath, entry, 'utf8');
211
+ }
212
+ else {
213
+ fs.writeFileSync(sessionPath, `<!-- aidev session log — append your comments below using "## your-name" as header -->\n${entry}`, 'utf8');
214
+ }
215
+ }
216
+ async getComments(taskId) {
217
+ logger_1.logger.debug(`Fetching comments for local task ${taskId}`);
218
+ const found = findTaskFile(this.baseDir, taskId);
219
+ if (!found)
220
+ return [];
221
+ const sessionPath = path.join(found.dir, sessionFilename(found.filename));
222
+ if (!fs.existsSync(sessionPath))
223
+ return [];
224
+ const content = fs.readFileSync(sessionPath, 'utf8');
225
+ return parseSession(content);
226
+ }
227
+ async updateStatus(taskId, status) {
228
+ const targetFolder = STATUS_TO_FOLDER[status.toLowerCase()];
229
+ if (!targetFolder) {
230
+ logger_1.logger.warn(`Unknown status "${status}" — mapping to "open"`);
231
+ }
232
+ const folder = targetFolder || 'open';
233
+ logger_1.logger.debug(`Updating local task ${taskId} status to "${status}" (folder: ${folder})`);
234
+ const found = findTaskFile(this.baseDir, taskId);
235
+ if (!found) {
236
+ throw new Error(`Local task not found: ${taskId}`);
237
+ }
238
+ if (found.folder === folder)
239
+ return;
240
+ const destDir = path.join(tasksRoot(this.baseDir), folder);
241
+ fs.mkdirSync(destDir, { recursive: true });
242
+ // Move task file
243
+ fs.renameSync(path.join(found.dir, found.filename), path.join(destDir, found.filename));
244
+ // Move session file if it exists
245
+ const sessName = sessionFilename(found.filename);
246
+ const sessSource = path.join(found.dir, sessName);
247
+ if (fs.existsSync(sessSource)) {
248
+ fs.renameSync(sessSource, path.join(destDir, sessName));
249
+ }
250
+ }
251
+ async createTask(params) {
252
+ const id = shortId();
253
+ const slug = slugify(params.title);
254
+ const filename = `${id}-${slug}.md`;
255
+ const meta = {
256
+ title: params.title,
257
+ };
258
+ if (this.mode === 'non-code')
259
+ meta.type = 'non-code';
260
+ if (params.priority)
261
+ meta.priority = String(params.priority);
262
+ if (params.tags.length > 0)
263
+ meta.tags = params.tags.join(', ');
264
+ if (params.dueDate)
265
+ meta.due_date = new Date(params.dueDate).toISOString().split('T')[0];
266
+ meta.created = new Date().toISOString();
267
+ const content = renderFrontmatter(meta, params.description || '');
268
+ const destDir = path.join(tasksRoot(this.baseDir), 'open');
269
+ fs.mkdirSync(destDir, { recursive: true });
270
+ const filePath = path.join(destDir, filename);
271
+ fs.writeFileSync(filePath, content, 'utf8');
272
+ logger_1.logger.debug(`Created local task: ${filePath}`);
273
+ return { id, url: filePath };
274
+ }
275
+ }
276
+ exports.LocalProvider = LocalProvider;
277
+ //# sourceMappingURL=local.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local.js","sourceRoot":"","sources":["../../src/providers/local.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -5,6 +5,7 @@ export interface Task {
5
5
  status: string;
6
6
  url: string;
7
7
  tags: string[];
8
+ priority?: number;
8
9
  }
9
10
  export interface LocalTask {
10
11
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IAEjB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAE9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IAEjB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAE9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qelos/aidev",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "description": "AI-powered task executor — polls ClickUp (and more) to implement tasks with Claude or Cursor",
5
5
  "type": "commonjs",
6
6
  "bin": {