@varveai/adit-cli 0.2.1
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/LICENSE +21 -0
- package/dist/commands/cloud.d.ts +51 -0
- package/dist/commands/cloud.d.ts.map +1 -0
- package/dist/commands/cloud.js +430 -0
- package/dist/commands/cloud.js.map +1 -0
- package/dist/commands/config.d.ts +8 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +30 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/db.d.ts +17 -0
- package/dist/commands/db.d.ts.map +1 -0
- package/dist/commands/db.js +48 -0
- package/dist/commands/db.js.map +1 -0
- package/dist/commands/diff.d.ts +30 -0
- package/dist/commands/diff.d.ts.map +1 -0
- package/dist/commands/diff.js +265 -0
- package/dist/commands/diff.js.map +1 -0
- package/dist/commands/doctor.d.ts +15 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +265 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/export.d.ts +24 -0
- package/dist/commands/export.d.ts.map +1 -0
- package/dist/commands/export.js +219 -0
- package/dist/commands/export.js.map +1 -0
- package/dist/commands/init.d.ts +12 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +137 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/list.d.ts +20 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +110 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/perf.d.ts +19 -0
- package/dist/commands/perf.d.ts.map +1 -0
- package/dist/commands/perf.js +102 -0
- package/dist/commands/perf.js.map +1 -0
- package/dist/commands/plugin.d.ts +28 -0
- package/dist/commands/plugin.d.ts.map +1 -0
- package/dist/commands/plugin.js +516 -0
- package/dist/commands/plugin.js.map +1 -0
- package/dist/commands/project-link.d.ts +16 -0
- package/dist/commands/project-link.d.ts.map +1 -0
- package/dist/commands/project-link.js +143 -0
- package/dist/commands/project-link.js.map +1 -0
- package/dist/commands/resume.d.ts +28 -0
- package/dist/commands/resume.d.ts.map +1 -0
- package/dist/commands/resume.js +229 -0
- package/dist/commands/resume.js.map +1 -0
- package/dist/commands/revert.d.ts +30 -0
- package/dist/commands/revert.d.ts.map +1 -0
- package/dist/commands/revert.js +271 -0
- package/dist/commands/revert.js.map +1 -0
- package/dist/commands/search.d.ts +16 -0
- package/dist/commands/search.d.ts.map +1 -0
- package/dist/commands/search.js +72 -0
- package/dist/commands/search.js.map +1 -0
- package/dist/commands/self-update.d.ts +12 -0
- package/dist/commands/self-update.d.ts.map +1 -0
- package/dist/commands/self-update.js +161 -0
- package/dist/commands/self-update.js.map +1 -0
- package/dist/commands/show.d.ts +5 -0
- package/dist/commands/show.d.ts.map +1 -0
- package/dist/commands/show.js +86 -0
- package/dist/commands/show.js.map +1 -0
- package/dist/commands/status.d.ts +11 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +237 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/task.d.ts +18 -0
- package/dist/commands/task.d.ts.map +1 -0
- package/dist/commands/task.js +131 -0
- package/dist/commands/task.js.map +1 -0
- package/dist/commands/transcript.d.ts +40 -0
- package/dist/commands/transcript.d.ts.map +1 -0
- package/dist/commands/transcript.js +275 -0
- package/dist/commands/transcript.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +385 -0
- package/dist/index.js.map +1 -0
- package/dist/tui/App.d.ts +8 -0
- package/dist/tui/App.d.ts.map +1 -0
- package/dist/tui/App.js +132 -0
- package/dist/tui/App.js.map +1 -0
- package/dist/tui/components/DiffView.d.ts +11 -0
- package/dist/tui/components/DiffView.d.ts.map +1 -0
- package/dist/tui/components/DiffView.js +29 -0
- package/dist/tui/components/DiffView.js.map +1 -0
- package/dist/tui/components/EventDetail.d.ts +11 -0
- package/dist/tui/components/EventDetail.d.ts.map +1 -0
- package/dist/tui/components/EventDetail.js +36 -0
- package/dist/tui/components/EventDetail.js.map +1 -0
- package/dist/tui/components/EventList.d.ts +15 -0
- package/dist/tui/components/EventList.d.ts.map +1 -0
- package/dist/tui/components/EventList.js +77 -0
- package/dist/tui/components/EventList.js.map +1 -0
- package/dist/tui/components/FilterBar.d.ts +12 -0
- package/dist/tui/components/FilterBar.d.ts.map +1 -0
- package/dist/tui/components/FilterBar.js +20 -0
- package/dist/tui/components/FilterBar.js.map +1 -0
- package/dist/tui/components/StatusBar.d.ts +16 -0
- package/dist/tui/components/StatusBar.d.ts.map +1 -0
- package/dist/tui/components/StatusBar.js +13 -0
- package/dist/tui/components/StatusBar.js.map +1 -0
- package/dist/tui/hooks/useKeyboard.d.ts +22 -0
- package/dist/tui/hooks/useKeyboard.d.ts.map +1 -0
- package/dist/tui/hooks/useKeyboard.js +64 -0
- package/dist/tui/hooks/useKeyboard.js.map +1 -0
- package/dist/tui/hooks/useTimeline.d.ts +31 -0
- package/dist/tui/hooks/useTimeline.d.ts.map +1 -0
- package/dist/tui/hooks/useTimeline.js +136 -0
- package/dist/tui/hooks/useTimeline.js.map +1 -0
- package/dist/tui/index.d.ts +5 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +10 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/screens/DiffScreen.d.ts +12 -0
- package/dist/tui/screens/DiffScreen.d.ts.map +1 -0
- package/dist/tui/screens/DiffScreen.js +25 -0
- package/dist/tui/screens/DiffScreen.js.map +1 -0
- package/dist/tui/screens/EnvScreen.d.ts +11 -0
- package/dist/tui/screens/EnvScreen.d.ts.map +1 -0
- package/dist/tui/screens/EnvScreen.js +25 -0
- package/dist/tui/screens/EnvScreen.js.map +1 -0
- package/dist/tui/screens/SearchScreen.d.ts +13 -0
- package/dist/tui/screens/SearchScreen.d.ts.map +1 -0
- package/dist/tui/screens/SearchScreen.js +56 -0
- package/dist/tui/screens/SearchScreen.js.map +1 -0
- package/dist/tui/screens/TimelineScreen.d.ts +19 -0
- package/dist/tui/screens/TimelineScreen.d.ts.map +1 -0
- package/dist/tui/screens/TimelineScreen.js +10 -0
- package/dist/tui/screens/TimelineScreen.js.map +1 -0
- package/dist/utils/format.d.ts +23 -0
- package/dist/utils/format.d.ts.map +1 -0
- package/dist/utils/format.js +65 -0
- package/dist/utils/format.js.map +1 -0
- package/dist/utils/summary.d.ts +26 -0
- package/dist/utils/summary.d.ts.map +1 -0
- package/dist/utils/summary.js +87 -0
- package/dist/utils/summary.js.map +1 -0
- package/dist/version.d.ts +8 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +11 -0
- package/dist/version.js.map +1 -0
- package/package.json +48 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `adit show <id>` — Show full event details.
|
|
3
|
+
*/
|
|
4
|
+
import { loadConfig, openDatabase, closeDatabase, parseLabels, parseDiffStats, parseError, } from "@varveai/adit-core";
|
|
5
|
+
import { createTimelineManager } from "@varveai/adit-engine";
|
|
6
|
+
export async function showCommand(eventId) {
|
|
7
|
+
const config = loadConfig();
|
|
8
|
+
const db = openDatabase(config.dbPath);
|
|
9
|
+
const timeline = createTimelineManager(db, config);
|
|
10
|
+
try {
|
|
11
|
+
const event = await timeline.get(eventId);
|
|
12
|
+
if (!event) {
|
|
13
|
+
// Try prefix match
|
|
14
|
+
const { queryEvents } = await import("@varveai/adit-core");
|
|
15
|
+
const all = queryEvents(db, { limit: 500 });
|
|
16
|
+
const match = all.find((e) => e.id.startsWith(eventId));
|
|
17
|
+
if (!match) {
|
|
18
|
+
console.error(`Event not found: ${eventId}`);
|
|
19
|
+
process.exit(1);
|
|
20
|
+
}
|
|
21
|
+
return showCommand(match.id);
|
|
22
|
+
}
|
|
23
|
+
console.log(`Event: ${event.id}`);
|
|
24
|
+
console.log(` Type: ${event.eventType}`);
|
|
25
|
+
console.log(` Actor: ${event.actor}`);
|
|
26
|
+
console.log(` Sequence: ${event.sequence}`);
|
|
27
|
+
console.log(` Session: ${event.sessionId}`);
|
|
28
|
+
console.log(` Started: ${event.startedAt}`);
|
|
29
|
+
console.log(` Ended: ${event.endedAt ?? "-"}`);
|
|
30
|
+
console.log(` Status: ${event.status}`);
|
|
31
|
+
console.log(` Branch: ${event.gitBranch ?? "-"}`);
|
|
32
|
+
console.log(` HEAD: ${event.gitHeadSha ?? "-"}`);
|
|
33
|
+
if (event.checkpointSha) {
|
|
34
|
+
console.log(` Checkpoint: ${event.checkpointSha}`);
|
|
35
|
+
console.log(` Ref: ${event.checkpointRef}`);
|
|
36
|
+
}
|
|
37
|
+
const labels = parseLabels(event.labelsJson);
|
|
38
|
+
if (labels.length > 0) {
|
|
39
|
+
console.log(` Labels: ${labels.join(", ")}`);
|
|
40
|
+
}
|
|
41
|
+
const error = parseError(event.errorJson);
|
|
42
|
+
if (error) {
|
|
43
|
+
console.log(` Error: [${error.category}] ${error.message}`);
|
|
44
|
+
}
|
|
45
|
+
if (event.promptText) {
|
|
46
|
+
console.log(`\n--- Prompt ---`);
|
|
47
|
+
console.log(event.promptText);
|
|
48
|
+
}
|
|
49
|
+
if (event.cotText) {
|
|
50
|
+
console.log(`\n--- Chain of Thought ---`);
|
|
51
|
+
console.log(event.cotText);
|
|
52
|
+
}
|
|
53
|
+
if (event.responseText) {
|
|
54
|
+
console.log(`\n--- Response ---`);
|
|
55
|
+
console.log(event.responseText);
|
|
56
|
+
}
|
|
57
|
+
if (event.toolName) {
|
|
58
|
+
console.log(`\n--- Tool: ${event.toolName} ---`);
|
|
59
|
+
if (event.toolInputJson) {
|
|
60
|
+
console.log("Input:", event.toolInputJson);
|
|
61
|
+
}
|
|
62
|
+
if (event.toolOutputJson) {
|
|
63
|
+
console.log("Output:", event.toolOutputJson);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const stats = parseDiffStats(event.diffStatJson);
|
|
67
|
+
if (stats.length > 0) {
|
|
68
|
+
console.log(`\n--- Files Changed (${stats.length}) ---`);
|
|
69
|
+
for (const f of stats) {
|
|
70
|
+
const adds = f.additions !== undefined ? `+${f.additions}` : "";
|
|
71
|
+
const dels = f.deletions !== undefined ? `-${f.deletions}` : "";
|
|
72
|
+
console.log(` ${f.status} ${f.path} ${adds} ${dels}`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
// Show diff if available
|
|
76
|
+
const diff = await timeline.getDiff(event.id, 50);
|
|
77
|
+
if (diff) {
|
|
78
|
+
console.log(`\n--- Diff (first 50 lines) ---`);
|
|
79
|
+
console.log(diff);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
closeDatabase(db);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=show.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `adit status` — Show ADIT status for the current project.
|
|
3
|
+
*
|
|
4
|
+
* Displays a styled overview with session cards, git state, sync info,
|
|
5
|
+
* and hook configuration. Inspired by Entire CLI's v0.4.6 session card
|
|
6
|
+
* format but adapted for ADIT's richer event model.
|
|
7
|
+
*/
|
|
8
|
+
export declare function statusCommand(opts?: {
|
|
9
|
+
json?: boolean;
|
|
10
|
+
}): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAiCH,wBAAsB,aAAa,CAAC,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgQ5E"}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `adit status` — Show ADIT status for the current project.
|
|
3
|
+
*
|
|
4
|
+
* Displays a styled overview with session cards, git state, sync info,
|
|
5
|
+
* and hook configuration. Inspired by Entire CLI's v0.4.6 session card
|
|
6
|
+
* format but adapted for ADIT's richer event model.
|
|
7
|
+
*/
|
|
8
|
+
import { existsSync } from "node:fs";
|
|
9
|
+
import pc from "picocolors";
|
|
10
|
+
import { loadConfig, openDatabase, closeDatabase, getActiveSession, countEvents, queryEvents, getLatestCheckpointEvent, getSyncState, findGitRoot, } from "@varveai/adit-core";
|
|
11
|
+
import { hasUncommittedChanges, getCurrentBranch, getHeadSha, } from "@varveai/adit-engine";
|
|
12
|
+
import { detectPlatform, getAdapter, listAdapters } from "@varveai/adit-hooks/adapters";
|
|
13
|
+
import { statusDot, joinDim, sectionHeader, horizontalRule, timeAgo } from "../utils/format.js";
|
|
14
|
+
import { truncate } from "../utils/summary.js";
|
|
15
|
+
/** Display-name map for platforms (matches adapter displayName but avoids import) */
|
|
16
|
+
const platformLabel = {
|
|
17
|
+
"claude-code": "Claude Code",
|
|
18
|
+
cursor: "Cursor",
|
|
19
|
+
copilot: "Copilot",
|
|
20
|
+
opencode: "OpenCode",
|
|
21
|
+
codex: "Codex",
|
|
22
|
+
};
|
|
23
|
+
export async function statusCommand(opts) {
|
|
24
|
+
const config = loadConfig();
|
|
25
|
+
const gitRoot = findGitRoot() ?? config.projectRoot;
|
|
26
|
+
// Gather status info
|
|
27
|
+
const status = {};
|
|
28
|
+
// 1. Check if ADIT is initialized
|
|
29
|
+
const dataExists = existsSync(config.dataDir);
|
|
30
|
+
const dbExists = existsSync(config.dbPath);
|
|
31
|
+
status.initialized = dataExists && dbExists;
|
|
32
|
+
if (!status.initialized) {
|
|
33
|
+
if (opts?.json) {
|
|
34
|
+
console.log(JSON.stringify({ initialized: false }, null, 2));
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
console.log();
|
|
38
|
+
console.log(`${statusDot(false)} ${pc.bold("Not initialized")}`);
|
|
39
|
+
console.log();
|
|
40
|
+
console.log(pc.dim("Run 'adit init' to get started."));
|
|
41
|
+
console.log();
|
|
42
|
+
}
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
// 2. Check hook configuration via platform adapters
|
|
46
|
+
// Validate all implemented adapters (skip stubs with no hook mappings)
|
|
47
|
+
const implementedAdapters = listAdapters().filter((a) => a.hookMappings.length > 0);
|
|
48
|
+
const installedPlatforms = [];
|
|
49
|
+
const missingPlatforms = [];
|
|
50
|
+
for (const adapter of implementedAdapters) {
|
|
51
|
+
const result = await adapter.validateInstallation(gitRoot);
|
|
52
|
+
if (result.valid) {
|
|
53
|
+
installedPlatforms.push(adapter.displayName);
|
|
54
|
+
}
|
|
55
|
+
else if (result.checks.some((c) => c.ok)) {
|
|
56
|
+
// Partially installed — platform directory exists but hooks incomplete
|
|
57
|
+
missingPlatforms.push(adapter.displayName);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// Fall back to env-detected platform if nothing found
|
|
61
|
+
if (installedPlatforms.length === 0 && missingPlatforms.length === 0) {
|
|
62
|
+
const platform = detectPlatform();
|
|
63
|
+
const adapter = getAdapter(platform);
|
|
64
|
+
if (adapter.hookMappings.length > 0) {
|
|
65
|
+
missingPlatforms.push(adapter.displayName);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
status.hooks = {
|
|
69
|
+
installed: installedPlatforms,
|
|
70
|
+
missing: missingPlatforms,
|
|
71
|
+
allInstalled: missingPlatforms.length === 0 && installedPlatforms.length > 0,
|
|
72
|
+
};
|
|
73
|
+
// 3. Database + session info
|
|
74
|
+
const db = openDatabase(config.dbPath);
|
|
75
|
+
let latestPromptText = null;
|
|
76
|
+
try {
|
|
77
|
+
// Active session
|
|
78
|
+
const session = getActiveSession(db, config.projectId, config.clientId);
|
|
79
|
+
status.session = session
|
|
80
|
+
? {
|
|
81
|
+
id: session.id,
|
|
82
|
+
platform: session.platform,
|
|
83
|
+
startedAt: session.startedAt,
|
|
84
|
+
status: session.status,
|
|
85
|
+
}
|
|
86
|
+
: null;
|
|
87
|
+
// Fetch latest prompt text for the session card
|
|
88
|
+
if (session) {
|
|
89
|
+
const latestPrompts = queryEvents(db, {
|
|
90
|
+
sessionId: session.id,
|
|
91
|
+
eventType: "prompt_submit",
|
|
92
|
+
limit: 1,
|
|
93
|
+
});
|
|
94
|
+
latestPromptText = latestPrompts[0]?.promptText ?? null;
|
|
95
|
+
}
|
|
96
|
+
// Event counts — use countEvents() for accurate total
|
|
97
|
+
const totalEvents = countEvents(db, config.projectId);
|
|
98
|
+
const checkpointEvents = queryEvents(db, { hasCheckpoint: true, limit: 10000 });
|
|
99
|
+
status.events = {
|
|
100
|
+
total: totalEvents,
|
|
101
|
+
checkpoints: checkpointEvents.length,
|
|
102
|
+
};
|
|
103
|
+
// Unsynced events — count events after the last sync cursor.
|
|
104
|
+
// Resolve server URL the same way auto-sync does: env var → credentials.
|
|
105
|
+
let syncServerUrl = process.env.ADIT_CLOUD_URL ?? null;
|
|
106
|
+
if (!syncServerUrl) {
|
|
107
|
+
try {
|
|
108
|
+
const { loadCredentials } = await import("@varveai/adit-cloud");
|
|
109
|
+
syncServerUrl = loadCredentials()?.serverUrl ?? null;
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
// @varveai/adit-cloud not available
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
const syncState = getSyncState(db, syncServerUrl ?? "");
|
|
116
|
+
if (syncState?.lastSyncedEventId) {
|
|
117
|
+
const row = db.prepare(`SELECT COUNT(*) as cnt FROM events e
|
|
118
|
+
JOIN sessions s ON e.session_id = s.id
|
|
119
|
+
WHERE e.id > ? AND s.project_id = ?`).get(syncState.lastSyncedEventId, config.projectId);
|
|
120
|
+
status.events.unsynced = row.cnt;
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
// Never synced — all events are unsynced
|
|
124
|
+
status.events.unsynced = totalEvents;
|
|
125
|
+
}
|
|
126
|
+
// Latest checkpoint
|
|
127
|
+
const latest = getLatestCheckpointEvent(db);
|
|
128
|
+
status.latestCheckpoint = latest
|
|
129
|
+
? {
|
|
130
|
+
eventId: latest.id,
|
|
131
|
+
sha: latest.checkpointSha?.substring(0, 8),
|
|
132
|
+
at: latest.startedAt,
|
|
133
|
+
}
|
|
134
|
+
: null;
|
|
135
|
+
}
|
|
136
|
+
finally {
|
|
137
|
+
closeDatabase(db);
|
|
138
|
+
}
|
|
139
|
+
// 4. Git info
|
|
140
|
+
const [branch, headSha, dirty] = await Promise.all([
|
|
141
|
+
getCurrentBranch(config.projectRoot),
|
|
142
|
+
getHeadSha(config.projectRoot),
|
|
143
|
+
hasUncommittedChanges(config.projectRoot),
|
|
144
|
+
]);
|
|
145
|
+
status.git = {
|
|
146
|
+
branch,
|
|
147
|
+
head: headSha?.substring(0, 8) ?? null,
|
|
148
|
+
dirty,
|
|
149
|
+
};
|
|
150
|
+
// ──────────────────────────────────────────────
|
|
151
|
+
// Output
|
|
152
|
+
// ──────────────────────────────────────────────
|
|
153
|
+
if (opts?.json) {
|
|
154
|
+
console.log(JSON.stringify(status, null, 2));
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const ruleWidth = 50;
|
|
158
|
+
const hooksStatus = status.hooks;
|
|
159
|
+
const session = status.session;
|
|
160
|
+
const events = status.events;
|
|
161
|
+
const latestCp = status.latestCheckpoint;
|
|
162
|
+
const git = status.git;
|
|
163
|
+
// ── Status line ──────────────────────────────
|
|
164
|
+
console.log();
|
|
165
|
+
const isActive = session !== null;
|
|
166
|
+
const hooksList = hooksStatus.installed.length > 0
|
|
167
|
+
? hooksStatus.installed.join(", ")
|
|
168
|
+
: null;
|
|
169
|
+
const branchLabel = git.branch ? pc.cyan(git.branch) : pc.yellow("detached");
|
|
170
|
+
console.log(joinDim([
|
|
171
|
+
`${statusDot(isActive)} ${pc.bold(isActive ? "Active" : "Idle")}`,
|
|
172
|
+
hooksList,
|
|
173
|
+
`branch ${branchLabel}`,
|
|
174
|
+
]));
|
|
175
|
+
// ── Session card ─────────────────────────────
|
|
176
|
+
console.log();
|
|
177
|
+
console.log(sectionHeader("Session", ruleWidth));
|
|
178
|
+
console.log();
|
|
179
|
+
if (session) {
|
|
180
|
+
const label = platformLabel[session.platform] ?? session.platform;
|
|
181
|
+
const shortId = session.id.substring(0, 12);
|
|
182
|
+
console.log(joinDim([pc.bold(label), pc.dim(shortId)]));
|
|
183
|
+
// Latest prompt (Entire-style quoted line)
|
|
184
|
+
if (latestPromptText) {
|
|
185
|
+
const cleaned = latestPromptText.replace(/\n/g, " ").trim();
|
|
186
|
+
console.log(pc.dim("> ") + `"${truncate(cleaned, 60)}"`);
|
|
187
|
+
}
|
|
188
|
+
// Stats line
|
|
189
|
+
const statsLine = joinDim([
|
|
190
|
+
`started ${timeAgo(session.startedAt)}`,
|
|
191
|
+
`${events.total} events`,
|
|
192
|
+
`${events.checkpoints} checkpoints`,
|
|
193
|
+
]);
|
|
194
|
+
console.log(pc.dim(statsLine));
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
console.log(pc.dim("No active session"));
|
|
198
|
+
}
|
|
199
|
+
// ── Git ──────────────────────────────────────
|
|
200
|
+
console.log();
|
|
201
|
+
console.log(sectionHeader("Git", ruleWidth));
|
|
202
|
+
console.log();
|
|
203
|
+
const headShort = git.head ?? "unknown";
|
|
204
|
+
const treeStatus = git.dirty
|
|
205
|
+
? pc.yellow("dirty")
|
|
206
|
+
: pc.green("clean");
|
|
207
|
+
console.log(joinDim([
|
|
208
|
+
`branch ${branchLabel}`,
|
|
209
|
+
headShort,
|
|
210
|
+
treeStatus,
|
|
211
|
+
]));
|
|
212
|
+
if (latestCp) {
|
|
213
|
+
console.log(pc.dim(`last checkpoint ${latestCp.sha} ${timeAgo(latestCp.at)}`));
|
|
214
|
+
}
|
|
215
|
+
// ── Sync ─────────────────────────────────────
|
|
216
|
+
console.log();
|
|
217
|
+
console.log(sectionHeader("Sync", ruleWidth));
|
|
218
|
+
console.log();
|
|
219
|
+
if (events.unsynced === 0) {
|
|
220
|
+
console.log(pc.green("all events synced"));
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
console.log(pc.yellow(`${events.unsynced} events unsynced`));
|
|
224
|
+
}
|
|
225
|
+
// ── Hooks warnings (only if issues) ──────────
|
|
226
|
+
if (missingPlatforms.length > 0) {
|
|
227
|
+
console.log();
|
|
228
|
+
console.log(sectionHeader("Warnings", ruleWidth));
|
|
229
|
+
console.log();
|
|
230
|
+
console.log(pc.yellow(`hooks incomplete: ${missingPlatforms.join(", ")}`));
|
|
231
|
+
}
|
|
232
|
+
// ── Footer ───────────────────────────────────
|
|
233
|
+
console.log();
|
|
234
|
+
console.log(horizontalRule(ruleWidth));
|
|
235
|
+
console.log();
|
|
236
|
+
}
|
|
237
|
+
//# sourceMappingURL=status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI handlers for `adit cloud task`.
|
|
3
|
+
*
|
|
4
|
+
* Implements the task status update command for updating
|
|
5
|
+
* task statuses in an intent using the /api/task-slices/bulk endpoint.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* `adit cloud task` — Update task statuses in an intent.
|
|
9
|
+
*/
|
|
10
|
+
export declare function taskCliHandler(intentId: string, opts: {
|
|
11
|
+
status?: string;
|
|
12
|
+
taskId?: string[];
|
|
13
|
+
phase?: number;
|
|
14
|
+
featureTag?: string;
|
|
15
|
+
wave?: number;
|
|
16
|
+
json?: boolean;
|
|
17
|
+
}): Promise<void>;
|
|
18
|
+
//# sourceMappingURL=task.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoHhB"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI handlers for `adit cloud task`.
|
|
3
|
+
*
|
|
4
|
+
* Implements the task status update command for updating
|
|
5
|
+
* task statuses in an intent using the /api/task-slices/bulk endpoint.
|
|
6
|
+
*/
|
|
7
|
+
import { loadConfig } from "@varveai/adit-core";
|
|
8
|
+
import { loadCloudConfig, loadCredentials, CloudClient, bulkTaskUpdateCommand, } from "@varveai/adit-cloud";
|
|
9
|
+
import { CloudAuthError, CloudNetworkError, CloudApiError } from "@varveai/adit-cloud";
|
|
10
|
+
/**
|
|
11
|
+
* `adit cloud task` — Update task statuses in an intent.
|
|
12
|
+
*/
|
|
13
|
+
export async function taskCliHandler(intentId, opts) {
|
|
14
|
+
const config = loadConfig();
|
|
15
|
+
// Prerequisite: credentials
|
|
16
|
+
const credentials = loadCredentials();
|
|
17
|
+
if (!credentials) {
|
|
18
|
+
console.error("Not logged in to adit-cloud.");
|
|
19
|
+
console.error("Run 'adit cloud login' to authenticate, or 'adit cloud auth-token <token>' for token auth.");
|
|
20
|
+
process.exitCode = 1;
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (credentials.authType !== "token" && credentials.authType !== undefined) {
|
|
24
|
+
// CloudClient will attempt auto-refresh — just warn
|
|
25
|
+
console.log("Token expired — will attempt auto-refresh...");
|
|
26
|
+
}
|
|
27
|
+
// Resolve server URL and project ID
|
|
28
|
+
const cloudConfig = loadCloudConfig();
|
|
29
|
+
const serverUrl = cloudConfig.serverUrl ?? credentials.serverUrl ?? "https://adit.cloud";
|
|
30
|
+
const projectId = config.projectId;
|
|
31
|
+
if (!projectId) {
|
|
32
|
+
console.error("No project ID configured. Run 'adit init' first.");
|
|
33
|
+
process.exitCode = 1;
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
// Verify connectivity
|
|
37
|
+
const client = new CloudClient(serverUrl, credentials);
|
|
38
|
+
try {
|
|
39
|
+
await client.get("/api/sync/health");
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
if (error instanceof CloudNetworkError) {
|
|
43
|
+
console.error(`Cannot reach adit-cloud at ${serverUrl}. Check your network connection.`);
|
|
44
|
+
}
|
|
45
|
+
else if (error instanceof CloudAuthError) {
|
|
46
|
+
console.error(`Authentication failed: ${error.message}`);
|
|
47
|
+
console.error("Run 'adit cloud login' to re-authenticate.");
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
console.error(`Connection check failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
51
|
+
}
|
|
52
|
+
process.exitCode = 1;
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
// Prepare options
|
|
56
|
+
const options = {
|
|
57
|
+
intentId,
|
|
58
|
+
status: opts.status,
|
|
59
|
+
taskId: opts.taskId,
|
|
60
|
+
json: opts.json,
|
|
61
|
+
};
|
|
62
|
+
// Add filters if provided
|
|
63
|
+
if (opts.phase !== undefined || opts.featureTag !== undefined || opts.wave !== undefined) {
|
|
64
|
+
options.filters = {
|
|
65
|
+
phase: opts.phase,
|
|
66
|
+
featureTag: opts.featureTag,
|
|
67
|
+
wave: opts.wave,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
// Execute the command
|
|
71
|
+
try {
|
|
72
|
+
const result = await bulkTaskUpdateCommand(client, projectId, options);
|
|
73
|
+
if (opts.json) {
|
|
74
|
+
console.log(JSON.stringify(result, null, 2));
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
console.log(result.message);
|
|
78
|
+
if (result.failed.length > 0) {
|
|
79
|
+
console.error("\nFailed tasks:");
|
|
80
|
+
result.failed.forEach((failed) => {
|
|
81
|
+
console.error(` ${failed.taskId}: ${failed.error}`);
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
if (error instanceof CloudApiError && error.status === 404) {
|
|
88
|
+
console.error("Intent not found or access denied. Check the intent ID and your permissions.");
|
|
89
|
+
}
|
|
90
|
+
else if (error instanceof CloudApiError) {
|
|
91
|
+
if (error.status === 302 ||
|
|
92
|
+
(typeof error.body === "string" && error.body.includes("/auth/signin"))) {
|
|
93
|
+
console.error("Authentication required. The server is redirecting to the login page.");
|
|
94
|
+
console.error("\nPlease try one of the following:");
|
|
95
|
+
console.error("1. Run 'adit cloud login' to authenticate with device code");
|
|
96
|
+
console.error("2. Set ADIT_AUTH_TOKEN environment variable with a valid token");
|
|
97
|
+
console.error("3. Check if your authentication has expired");
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
console.error(`Server error: ${error.status} — ${error.message}`);
|
|
101
|
+
if (error.body) {
|
|
102
|
+
const bodyStr = typeof error.body === "string"
|
|
103
|
+
? error.body
|
|
104
|
+
: JSON.stringify(error.body, null, 2);
|
|
105
|
+
console.error(` Response: ${bodyStr}`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
else if (error instanceof CloudNetworkError) {
|
|
110
|
+
if (error.message.includes("redirect") || error.message.includes("Too many redirects")) {
|
|
111
|
+
console.error("Authentication redirect detected. The server is redirecting requests.");
|
|
112
|
+
console.error("\nPlease try one of the following:");
|
|
113
|
+
console.error("1. Run 'adit cloud login' to authenticate with device code");
|
|
114
|
+
console.error("2. Set ADIT_AUTH_TOKEN environment variable with a valid token");
|
|
115
|
+
console.error("3. Check if your authentication has expired");
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
console.error(`Network error: ${error.message}`);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
else if (error instanceof CloudAuthError) {
|
|
122
|
+
console.error(`Authentication failed: ${error.message}`);
|
|
123
|
+
console.error("Run 'adit cloud login' to re-authenticate.");
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
console.error(`Task update failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
127
|
+
}
|
|
128
|
+
process.exitCode = 1;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EACL,eAAe,EACf,eAAe,EACf,WAAW,EACX,qBAAqB,GAEtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEvF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,IAOtD;IACC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,4BAA4B;IAC5B,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;IACtC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,4FAA4F,CAAC,CAAC;QAC5G,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,WAAW,CAAC,QAAQ,KAAK,OAAO,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3E,oDAAoD;QACpD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAC9D,CAAC;IAED,oCAAoC;IACpC,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,SAAS,IAAI,oBAAoB,CAAC;IACzF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IAEnC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAClE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,sBAAsB;IACtB,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,8BAA8B,SAAS,kCAAkC,CAAC,CAAC;QAC3F,CAAC;aAAM,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtG,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,MAAM,OAAO,GAA0B;QACrC,QAAQ;QACR,MAAM,EAAE,IAAI,CAAC,MAAa;QAC1B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;IAEF,0BAA0B;IAC1B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACzF,OAAO,CAAC,OAAO,GAAG;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;IACJ,CAAC;IAED,sBAAsB;IACtB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEvE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAE5B,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAyC,EAAE,EAAE;oBAClE,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC3D,OAAO,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;QAChG,CAAC;aAAM,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;gBACpB,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;gBAC5E,OAAO,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;gBACvF,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACpD,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBAC5E,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,MAAM,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAClE,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;wBAC5C,CAAC,CAAC,KAAK,CAAC,IAAI;wBACZ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,eAAe,OAAO,EAAE,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;YAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBACvF,OAAO,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;gBACvF,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACpD,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBAC5E,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;gBAChF,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,uBAAuB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjG,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `adit transcript` — Transcript upload management commands.
|
|
3
|
+
*
|
|
4
|
+
* Subcommands:
|
|
5
|
+
* enable — Enable automatic transcript upload (default)
|
|
6
|
+
* disable — Disable automatic transcript upload
|
|
7
|
+
* status — Show transcript upload status
|
|
8
|
+
* upload — Manually trigger transcript uploads
|
|
9
|
+
* reset — Reset a failed transcript for re-upload
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* `adit transcript enable` — Enable transcript upload.
|
|
13
|
+
*
|
|
14
|
+
* Sets the ADIT_TRANSCRIPT_UPLOAD env hint and prints guidance.
|
|
15
|
+
* The actual toggle is environment-based (ADIT_TRANSCRIPT_UPLOAD).
|
|
16
|
+
*/
|
|
17
|
+
export declare function transcriptEnableCommand(): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* `adit transcript disable` — Disable transcript upload.
|
|
20
|
+
*/
|
|
21
|
+
export declare function transcriptDisableCommand(): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* `adit transcript status` — Show transcript upload state.
|
|
24
|
+
*/
|
|
25
|
+
export declare function transcriptStatusCommand(opts?: {
|
|
26
|
+
json?: boolean;
|
|
27
|
+
}): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* `adit transcript upload` — Manually trigger transcript uploads.
|
|
30
|
+
*/
|
|
31
|
+
export declare function transcriptUploadCommand(opts?: {
|
|
32
|
+
json?: boolean;
|
|
33
|
+
}): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* `adit transcript reset <id>` — Reset a failed transcript for re-upload.
|
|
36
|
+
*/
|
|
37
|
+
export declare function transcriptResetCommand(id: string, opts?: {
|
|
38
|
+
json?: boolean;
|
|
39
|
+
}): Promise<void>;
|
|
40
|
+
//# sourceMappingURL=transcript.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../src/commands/transcript.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAcH;;;;;GAKG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CA2B7D;AAED;;GAEG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAY9D;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,CAAC,EAAE;IACnD,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6HhB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,CAAC,EAAE;IACnD,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwEhB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,MAAM,EACV,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GACxB,OAAO,CAAC,IAAI,CAAC,CAuDf"}
|