@phren/cli
Version:
Knowledge layer for AI agents - CLI, MCP server, and data layer
24 lines (23 loc) • 991 B
TypeScript
import { type TaskClaim, type TaskItem } from "../data/tasks.js";
export interface ClaimOutcome {
/** True when this computer holds the claim after syncing; false after a release. */
claimed: boolean;
item?: TaskItem;
/** The claim that won when another computer's reached the remote first. */
heldBy?: TaskClaim;
/** False when the claim could not reach the store's remote. */
synced: boolean;
detail: string;
error?: string;
}
/**
* Claims a task across unlinked conductors: pull the store so a claim already
* pushed elsewhere refuses this one, write the claim, then commit and push.
* When another computer's claim reached the remote first, the store merge
* keeps theirs, so the task is read again after the push to see who won.
*/
export declare function claimTaskSynced(phrenPath: string, project: string, match: string, claim: TaskClaim, opts?: {
release?: boolean;
force?: boolean;
graphRoot?: string;
}): Promise<ClaimOutcome>;