@hasna/todos 0.9.33 → 0.9.35
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/dashboard/dist/assets/index-DVzieYOj.js +346 -0
- package/dashboard/dist/assets/index-DWpVlvWb.css +1 -0
- package/dashboard/dist/index.html +13 -0
- package/dashboard/dist/logo.jpg +0 -0
- package/dist/cli/components/App.d.ts +2 -0
- package/dist/cli/components/App.d.ts.map +1 -0
- package/dist/cli/components/Header.d.ts +8 -0
- package/dist/cli/components/Header.d.ts.map +1 -0
- package/dist/cli/components/ProjectList.d.ts +8 -0
- package/dist/cli/components/ProjectList.d.ts.map +1 -0
- package/dist/cli/components/SearchView.d.ts +10 -0
- package/dist/cli/components/SearchView.d.ts.map +1 -0
- package/dist/cli/components/TaskDetail.d.ts +7 -0
- package/dist/cli/components/TaskDetail.d.ts.map +1 -0
- package/dist/cli/components/TaskForm.d.ts +15 -0
- package/dist/cli/components/TaskForm.d.ts.map +1 -0
- package/dist/cli/components/TaskList.d.ts +8 -0
- package/dist/cli/components/TaskList.d.ts.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +13899 -0
- package/dist/db/agents.d.ts +32 -0
- package/dist/db/agents.d.ts.map +1 -0
- package/dist/db/audit.d.ts +6 -0
- package/dist/db/audit.d.ts.map +1 -0
- package/dist/db/comments.d.ts +7 -0
- package/dist/db/comments.d.ts.map +1 -0
- package/dist/db/database.d.ts +12 -0
- package/dist/db/database.d.ts.map +1 -0
- package/dist/db/orgs.d.ts +13 -0
- package/dist/db/orgs.d.ts.map +1 -0
- package/dist/db/plans.d.ts +8 -0
- package/dist/db/plans.d.ts.map +1 -0
- package/dist/db/projects.d.ts +12 -0
- package/dist/db/projects.d.ts.map +1 -0
- package/dist/db/sessions.d.ts +8 -0
- package/dist/db/sessions.d.ts.map +1 -0
- package/dist/db/task-lists.d.ts +10 -0
- package/dist/db/task-lists.d.ts.map +1 -0
- package/dist/db/tasks.d.ts +135 -0
- package/dist/db/tasks.d.ts.map +1 -0
- package/dist/db/templates.d.ts +8 -0
- package/dist/db/templates.d.ts.map +1 -0
- package/dist/db/webhooks.d.ts +8 -0
- package/dist/db/webhooks.d.ts.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3062 -0
- package/dist/lib/agent-tasks.d.ts +11 -0
- package/dist/lib/agent-tasks.d.ts.map +1 -0
- package/dist/lib/auto-assign.d.ts +9 -0
- package/dist/lib/auto-assign.d.ts.map +1 -0
- package/dist/lib/claude-tasks.d.ts +20 -0
- package/dist/lib/claude-tasks.d.ts.map +1 -0
- package/dist/lib/completion-guard.d.ts +17 -0
- package/dist/lib/completion-guard.d.ts.map +1 -0
- package/dist/lib/config.d.ts +34 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/recurrence.d.ts +10 -0
- package/dist/lib/recurrence.d.ts.map +1 -0
- package/dist/lib/search.d.ts +17 -0
- package/dist/lib/search.d.ts.map +1 -0
- package/dist/lib/sync-types.d.ts +16 -0
- package/dist/lib/sync-types.d.ts.map +1 -0
- package/dist/lib/sync-utils.d.ts +12 -0
- package/dist/lib/sync-utils.d.ts.map +1 -0
- package/dist/lib/sync.d.ts +9 -0
- package/dist/lib/sync.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +3 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +8469 -0
- package/dist/server/index.d.ts +9 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +2371 -0
- package/dist/server/serve.d.ts +9 -0
- package/dist/server/serve.d.ts.map +1 -0
- package/dist/types/index.d.ts +410 -0
- package/dist/types/index.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SyncPrefer, SyncResult } from "./sync-types.js";
|
|
2
|
+
export declare function pushToAgentTaskList(agent: string, taskListId: string, projectId?: string, options?: {
|
|
3
|
+
prefer?: SyncPrefer;
|
|
4
|
+
}): SyncResult;
|
|
5
|
+
export declare function pullFromAgentTaskList(agent: string, taskListId: string, projectId?: string, options?: {
|
|
6
|
+
prefer?: SyncPrefer;
|
|
7
|
+
}): SyncResult;
|
|
8
|
+
export declare function syncAgentTaskList(agent: string, taskListId: string, projectId?: string, options?: {
|
|
9
|
+
prefer?: SyncPrefer;
|
|
10
|
+
}): SyncResult;
|
|
11
|
+
//# sourceMappingURL=agent-tasks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-tasks.d.ts","sourceRoot":"","sources":["../../src/lib/agent-tasks.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAwD9D,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GACpC,UAAU,CAuFZ;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GACpC,UAAU,CAoFZ;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GACpC,UAAU,CAQZ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { Task } from "../types/index.js";
|
|
3
|
+
/**
|
|
4
|
+
* Find the best agent to assign a task to.
|
|
5
|
+
* Strategy: least-loaded agent with role "agent" (not admin/observer).
|
|
6
|
+
* Returns agent name or null if no agents available.
|
|
7
|
+
*/
|
|
8
|
+
export declare function findBestAgent(_task: Task, db?: Database): string | null;
|
|
9
|
+
//# sourceMappingURL=auto-assign.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-assign.d.ts","sourceRoot":"","sources":["../../src/lib/auto-assign.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAI3C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CA6BvE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { SyncPrefer, SyncResult } from "./sync-types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Push all SQLite tasks to a Claude Code task list directory.
|
|
4
|
+
*/
|
|
5
|
+
export declare function pushToClaudeTaskList(taskListId: string, projectId?: string, options?: {
|
|
6
|
+
prefer?: SyncPrefer;
|
|
7
|
+
}): SyncResult;
|
|
8
|
+
/**
|
|
9
|
+
* Pull tasks from a Claude Code task list into SQLite.
|
|
10
|
+
*/
|
|
11
|
+
export declare function pullFromClaudeTaskList(taskListId: string, projectId?: string, options?: {
|
|
12
|
+
prefer?: SyncPrefer;
|
|
13
|
+
}): SyncResult;
|
|
14
|
+
/**
|
|
15
|
+
* Bidirectional sync: pull first, then push.
|
|
16
|
+
*/
|
|
17
|
+
export declare function syncClaudeTaskList(taskListId: string, projectId?: string, options?: {
|
|
18
|
+
prefer?: SyncPrefer;
|
|
19
|
+
}): SyncResult;
|
|
20
|
+
//# sourceMappingURL=claude-tasks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-tasks.d.ts","sourceRoot":"","sources":["../../src/lib/claude-tasks.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAwF9D;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GACpC,UAAU,CA4GZ;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GACpC,UAAU,CAwFZ;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GACpC,UAAU,CAQZ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { Task } from "../types/index.js";
|
|
3
|
+
import { type CompletionGuardConfig } from "./config.js";
|
|
4
|
+
/**
|
|
5
|
+
* Checks completion guards before allowing a task to be marked as completed.
|
|
6
|
+
* Throws CompletionGuardError if any guard condition is violated.
|
|
7
|
+
*
|
|
8
|
+
* Guards:
|
|
9
|
+
* 1. Status check — task must be in_progress
|
|
10
|
+
* 2. Minimum work duration — must have spent enough time since startTask()
|
|
11
|
+
* 3. Rate limit — max completions per agent per time window
|
|
12
|
+
* 4. Cooldown — minimum gap between consecutive completions
|
|
13
|
+
*
|
|
14
|
+
* @param configOverride - Optional config override (used in tests)
|
|
15
|
+
*/
|
|
16
|
+
export declare function checkCompletionGuard(task: Task, agentId: string | null, db: Database, configOverride?: Required<CompletionGuardConfig>): void;
|
|
17
|
+
//# sourceMappingURL=completion-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion-guard.d.ts","sourceRoot":"","sources":["../../src/lib/completion-guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGnF;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,EAAE,EAAE,QAAQ,EACZ,cAAc,CAAC,EAAE,QAAQ,CAAC,qBAAqB,CAAC,GAC/C,IAAI,CAyEN"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface AgentConfig {
|
|
2
|
+
task_list_id?: string;
|
|
3
|
+
tasks_dir?: string;
|
|
4
|
+
}
|
|
5
|
+
export interface TaskPrefixConfig {
|
|
6
|
+
prefix: string;
|
|
7
|
+
start_from?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface CompletionGuardConfig {
|
|
10
|
+
enabled?: boolean;
|
|
11
|
+
min_work_seconds?: number;
|
|
12
|
+
max_completions_per_window?: number;
|
|
13
|
+
window_minutes?: number;
|
|
14
|
+
cooldown_seconds?: number;
|
|
15
|
+
}
|
|
16
|
+
export interface ProjectOverrideConfig {
|
|
17
|
+
completion_guard?: CompletionGuardConfig;
|
|
18
|
+
}
|
|
19
|
+
export interface TodosConfig {
|
|
20
|
+
sync_agents?: string[] | string;
|
|
21
|
+
task_list_id?: string;
|
|
22
|
+
agent_tasks_dir?: string;
|
|
23
|
+
agents?: Record<string, AgentConfig>;
|
|
24
|
+
task_prefix?: TaskPrefixConfig;
|
|
25
|
+
completion_guard?: CompletionGuardConfig;
|
|
26
|
+
project_overrides?: Record<string, ProjectOverrideConfig>;
|
|
27
|
+
}
|
|
28
|
+
export declare function loadConfig(): TodosConfig;
|
|
29
|
+
export declare function getSyncAgentsFromConfig(): string[] | null;
|
|
30
|
+
export declare function getAgentTaskListId(agent: string): string | null;
|
|
31
|
+
export declare function getAgentTasksDir(agent: string): string | null;
|
|
32
|
+
export declare function getTaskPrefixConfig(): TaskPrefixConfig | null;
|
|
33
|
+
export declare function getCompletionGuardConfig(projectPath?: string | null): Required<CompletionGuardConfig>;
|
|
34
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CAC3D;AASD,wBAAgB,UAAU,IAAI,WAAW,CAYxC;AAED,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,GAAG,IAAI,CAKzD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM/D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM7D;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,IAAI,CAG7D;AAUD,wBAAgB,wBAAwB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CASrG"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface ParsedRule {
|
|
2
|
+
type: "interval" | "weekdays" | "specific_days";
|
|
3
|
+
interval?: number;
|
|
4
|
+
unit?: "day" | "week" | "month";
|
|
5
|
+
days?: number[];
|
|
6
|
+
}
|
|
7
|
+
export declare function parseRecurrenceRule(rule: string): ParsedRule;
|
|
8
|
+
export declare function isValidRecurrenceRule(rule: string): boolean;
|
|
9
|
+
export declare function nextOccurrence(rule: string, from?: Date): string;
|
|
10
|
+
//# sourceMappingURL=recurrence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recurrence.d.ts","sourceRoot":"","sources":["../../src/lib/recurrence.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,eAAe,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAoD5D;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAO3D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CAkChE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import type { Task } from "../types/index.js";
|
|
3
|
+
export interface SearchOptions {
|
|
4
|
+
query: string;
|
|
5
|
+
project_id?: string;
|
|
6
|
+
task_list_id?: string;
|
|
7
|
+
status?: string | string[];
|
|
8
|
+
priority?: string | string[];
|
|
9
|
+
assigned_to?: string;
|
|
10
|
+
agent_id?: string;
|
|
11
|
+
created_after?: string;
|
|
12
|
+
updated_after?: string;
|
|
13
|
+
has_dependencies?: boolean;
|
|
14
|
+
is_blocked?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare function searchTasks(options: SearchOptions | string, projectId?: string, taskListId?: string, db?: Database): Task[];
|
|
17
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/lib/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAW,MAAM,mBAAmB,CAAC;AAcvD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,aAAa,GAAG,MAAM,EAC/B,SAAS,CAAC,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,EAAE,CAAC,EAAE,QAAQ,GACZ,IAAI,EAAE,CAiFR"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface SyncResult {
|
|
2
|
+
pushed: number;
|
|
3
|
+
pulled: number;
|
|
4
|
+
errors: string[];
|
|
5
|
+
}
|
|
6
|
+
export type SyncPrefer = "local" | "remote";
|
|
7
|
+
export interface SyncConflict {
|
|
8
|
+
agent: string;
|
|
9
|
+
direction: "push" | "pull";
|
|
10
|
+
prefer: SyncPrefer;
|
|
11
|
+
local_updated_at?: string;
|
|
12
|
+
remote_updated_at?: string;
|
|
13
|
+
detected_at: string;
|
|
14
|
+
notes?: string;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=sync-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-types.d.ts","sourceRoot":"","sources":["../../src/lib/sync-types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SyncConflict } from "./sync-types.js";
|
|
2
|
+
export declare const HOME: string;
|
|
3
|
+
export declare function ensureDir(dir: string): void;
|
|
4
|
+
export declare function listJsonFiles(dir: string): string[];
|
|
5
|
+
export declare function readJsonFile<T>(path: string): T | null;
|
|
6
|
+
export declare function writeJsonFile(path: string, data: unknown): void;
|
|
7
|
+
export declare function readHighWaterMark(dir: string): number;
|
|
8
|
+
export declare function writeHighWaterMark(dir: string, value: number): void;
|
|
9
|
+
export declare function getFileMtimeMs(path: string): number | null;
|
|
10
|
+
export declare function parseTimestamp(value: unknown): number | null;
|
|
11
|
+
export declare function appendSyncConflict(metadata: Record<string, unknown>, conflict: SyncConflict, limit?: number): Record<string, unknown>;
|
|
12
|
+
//# sourceMappingURL=sync-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-utils.d.ts","sourceRoot":"","sources":["../../src/lib/sync-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,eAAO,MAAM,IAAI,QAA2D,CAAC;AAE7E,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAGnD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAMtD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAE/D;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKrD;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAEnE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM1D;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAI5D;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,QAAQ,EAAE,YAAY,EACtB,KAAK,SAAI,GACR,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { SyncPrefer, SyncResult } from "./sync-types.js";
|
|
2
|
+
export type SyncDirection = "push" | "pull" | "both";
|
|
3
|
+
export interface SyncOptions {
|
|
4
|
+
prefer?: SyncPrefer;
|
|
5
|
+
}
|
|
6
|
+
export declare function defaultSyncAgents(): string[];
|
|
7
|
+
export declare function syncWithAgent(agent: string, taskListId: string, projectId?: string, direction?: SyncDirection, options?: SyncOptions): SyncResult;
|
|
8
|
+
export declare function syncWithAgents(agents: string[], taskListIdByAgent: (agent: string) => string | null, projectId?: string, direction?: SyncDirection, options?: SyncOptions): SyncResult;
|
|
9
|
+
//# sourceMappingURL=sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/lib/sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK9D,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACrD,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAWD,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAQ5C;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAsB,EACjC,OAAO,GAAE,WAAgB,GACxB,UAAU,CAWZ;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EAAE,EAChB,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,EACnD,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,aAAsB,EACjC,OAAO,GAAE,WAAgB,GACxB,UAAU,CAoCZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":""}
|