clawck 0.4.3 → 0.5.4
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/README.md +86 -11
- package/dist/cli/index.js +29 -44
- package/dist/cli/index.js.map +1 -1
- package/dist/core/atp.d.ts +1 -1
- package/dist/core/atp.d.ts.map +1 -1
- package/dist/core/atp.js +1 -1
- package/dist/core/atp.js.map +1 -1
- package/dist/core/clawck.d.ts.map +1 -1
- package/dist/core/clawck.js +40 -1
- package/dist/core/clawck.js.map +1 -1
- package/dist/core/config.d.ts +10 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +58 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/database.d.ts +13 -0
- package/dist/core/database.d.ts.map +1 -1
- package/dist/core/database.js +150 -65
- package/dist/core/database.js.map +1 -1
- package/dist/core/errors.d.ts +19 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +40 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/logger.d.ts +14 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +39 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/pricing.d.ts +28 -0
- package/dist/core/pricing.d.ts.map +1 -0
- package/dist/core/pricing.js +48 -0
- package/dist/core/pricing.js.map +1 -0
- package/dist/core/runtime.d.ts +10 -0
- package/dist/core/runtime.d.ts.map +1 -1
- package/dist/core/runtime.js +34 -0
- package/dist/core/runtime.js.map +1 -1
- package/dist/core/sync.d.ts.map +1 -1
- package/dist/core/sync.js +3 -0
- package/dist/core/sync.js.map +1 -1
- package/dist/core/types.d.ts +14 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/webhooks.d.ts.map +1 -1
- package/dist/core/webhooks.js +5 -2
- package/dist/core/webhooks.js.map +1 -1
- package/dist/dashboard/index.js +3 -3
- package/dist/hooks/adapters.d.ts.map +1 -1
- package/dist/hooks/adapters.js +27 -8
- package/dist/hooks/adapters.js.map +1 -1
- package/dist/hooks/handler.d.ts.map +1 -1
- package/dist/hooks/handler.js +17 -5
- package/dist/hooks/handler.js.map +1 -1
- package/dist/hooks/types.d.ts +1 -0
- package/dist/hooks/types.d.ts.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/reports/html.d.ts +2 -2
- package/dist/reports/html.d.ts.map +1 -1
- package/dist/reports/html.js +238 -84
- package/dist/reports/html.js.map +1 -1
- package/dist/reports/pdf.d.ts.map +1 -1
- package/dist/reports/pdf.js +5 -4
- package/dist/reports/pdf.js.map +1 -1
- package/dist/server/api.d.ts.map +1 -1
- package/dist/server/api.js +57 -18
- package/dist/server/api.js.map +1 -1
- package/dist/server/mcp.d.ts.map +1 -1
- package/dist/server/mcp.js +3 -3
- package/dist/server/mcp.js.map +1 -1
- package/docs/api-reference.md +380 -0
- package/docs/deployment.md +140 -0
- package/docs/deprecation-policy.md +32 -0
- package/docs/migration-guide.md +78 -0
- package/docs/security.md +70 -0
- package/docs/skills/clawck-setup.md +19 -0
- package/docs/skills/clawck-usage.md +6 -0
- package/docs/versioning.md +49 -0
- package/package.json +7 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/core/webhooks.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/core/webhooks.ts"],"names":[],"mappings":"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"}
|
package/dist/dashboard/index.js
CHANGED
|
@@ -439,9 +439,9 @@ function render() {
|
|
|
439
439
|
const statsHTML = \`
|
|
440
440
|
<div class="stats-grid">
|
|
441
441
|
<div class="stat-card">
|
|
442
|
-
<div class="stat-label">
|
|
443
|
-
<div class="stat-value stat-accent">\${ts.total_agent_hours.toFixed(1)}</div>
|
|
444
|
-
<div class="stat-sub"
|
|
442
|
+
<div class="stat-label">Total Runtime</div>
|
|
443
|
+
<div class="stat-value stat-accent">\${ts.total_agent_hours.toFixed(1)}h</div>
|
|
444
|
+
<div class="stat-sub">Merged: \${(ts.total_agent_merged_runtime_hours || 0).toFixed(1)}h\${ts.total_agent_merged_runtime_hours > 0 && ts.total_agent_merged_runtime_hours < ts.total_agent_hours ? ' (' + (ts.total_agent_hours / ts.total_agent_merged_runtime_hours).toFixed(1) + 'x parallel)' : ''}</div>
|
|
445
445
|
</div>
|
|
446
446
|
<div class="stat-card">
|
|
447
447
|
<div class="stat-label">Human Equiv Hours</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/hooks/adapters.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAIhD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAQtE;
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/hooks/adapters.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAIhD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAQtE;AAqJD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,WAAW,CAGzF"}
|
package/dist/hooks/adapters.js
CHANGED
|
@@ -33,8 +33,9 @@ function normalizeClaude(json) {
|
|
|
33
33
|
agent: 'claude-code',
|
|
34
34
|
model: str(json.model),
|
|
35
35
|
cwd: str(json.cwd),
|
|
36
|
-
tokens_in: num(json.tokens_in),
|
|
37
|
-
tokens_out: num(json.tokens_out),
|
|
36
|
+
tokens_in: num(json.tokens_in) ?? num(json.total_input_tokens),
|
|
37
|
+
tokens_out: num(json.tokens_out) ?? num(json.total_output_tokens),
|
|
38
|
+
cost_usd: num(json.cost_usd) ?? num(json.total_cost_usd),
|
|
38
39
|
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
39
40
|
raw: json,
|
|
40
41
|
};
|
|
@@ -50,9 +51,10 @@ function normalizeGemini(json) {
|
|
|
50
51
|
agent: 'gemini-cli',
|
|
51
52
|
model: str(json.model) || str(ctx?.model),
|
|
52
53
|
cwd: str(json.cwd) || str(ctx?.cwd),
|
|
53
|
-
tokens_in: num(json.tokens_in),
|
|
54
|
-
tokens_out: num(json.tokens_out),
|
|
55
|
-
|
|
54
|
+
tokens_in: num(json.tokens_in) ?? num(json.input_tokens),
|
|
55
|
+
tokens_out: num(json.tokens_out) ?? num(json.output_tokens),
|
|
56
|
+
cost_usd: num(json.cost_usd) ?? num(json.total_cost_usd),
|
|
57
|
+
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
56
58
|
raw: json,
|
|
57
59
|
};
|
|
58
60
|
}
|
|
@@ -66,6 +68,10 @@ function normalizeCursor(json) {
|
|
|
66
68
|
agent: 'cursor',
|
|
67
69
|
model: str(json.model),
|
|
68
70
|
cwd: str(json.workspace_path) || str(json.cwd),
|
|
71
|
+
tokens_in: num(json.tokens_in) ?? num(json.input_tokens),
|
|
72
|
+
tokens_out: num(json.tokens_out) ?? num(json.output_tokens),
|
|
73
|
+
cost_usd: num(json.cost_usd) ?? num(json.total_cost_usd),
|
|
74
|
+
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
69
75
|
raw: json,
|
|
70
76
|
};
|
|
71
77
|
}
|
|
@@ -79,6 +85,10 @@ function normalizeCline(json) {
|
|
|
79
85
|
agent: 'cline',
|
|
80
86
|
model: str(json.model) || str(json.apiProvider),
|
|
81
87
|
cwd: str(json.workspacePath) || str(json.cwd),
|
|
88
|
+
tokens_in: num(json.tokens_in) ?? num(json.input_tokens) ?? num(json.tokensIn),
|
|
89
|
+
tokens_out: num(json.tokens_out) ?? num(json.output_tokens) ?? num(json.tokensOut),
|
|
90
|
+
cost_usd: num(json.cost_usd) ?? num(json.totalCost),
|
|
91
|
+
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
82
92
|
raw: json,
|
|
83
93
|
};
|
|
84
94
|
}
|
|
@@ -92,6 +102,10 @@ function normalizeWindsurf(json) {
|
|
|
92
102
|
agent: 'windsurf',
|
|
93
103
|
model: str(json.model),
|
|
94
104
|
cwd: str(json.workspace_path) || str(json.cwd),
|
|
105
|
+
tokens_in: num(json.tokens_in) ?? num(json.input_tokens),
|
|
106
|
+
tokens_out: num(json.tokens_out) ?? num(json.output_tokens),
|
|
107
|
+
cost_usd: num(json.cost_usd) ?? num(json.total_cost_usd),
|
|
108
|
+
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
95
109
|
raw: json,
|
|
96
110
|
};
|
|
97
111
|
}
|
|
@@ -105,6 +119,10 @@ function normalizeCodex(json) {
|
|
|
105
119
|
agent: 'codex',
|
|
106
120
|
model: str(json.model),
|
|
107
121
|
cwd: str(json.cwd),
|
|
122
|
+
tokens_in: num(json.tokens_in) ?? num(json.input_tokens),
|
|
123
|
+
tokens_out: num(json.tokens_out) ?? num(json.output_tokens),
|
|
124
|
+
cost_usd: num(json.cost_usd) ?? num(json.total_cost_usd),
|
|
125
|
+
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
108
126
|
raw: json,
|
|
109
127
|
};
|
|
110
128
|
}
|
|
@@ -118,9 +136,10 @@ function normalizeUnknown(json) {
|
|
|
118
136
|
agent: str(json.agent) || 'unknown',
|
|
119
137
|
model: str(json.model),
|
|
120
138
|
cwd: str(json.cwd),
|
|
121
|
-
tokens_in: num(json.tokens_in),
|
|
122
|
-
tokens_out: num(json.tokens_out),
|
|
123
|
-
|
|
139
|
+
tokens_in: num(json.tokens_in) ?? num(json.input_tokens),
|
|
140
|
+
tokens_out: num(json.tokens_out) ?? num(json.output_tokens),
|
|
141
|
+
cost_usd: num(json.cost_usd) ?? num(json.total_cost_usd),
|
|
142
|
+
tool_calls: num(json.tool_calls) ?? num(json.num_tool_calls),
|
|
124
143
|
raw: json,
|
|
125
144
|
};
|
|
126
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/hooks/adapters.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAMH,wCAQC;
|
|
1
|
+
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/hooks/adapters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/hooks/handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/hooks/handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAkBtC,wBAAsB,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0C/F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAsC9F"}
|
package/dist/hooks/handler.js
CHANGED
|
@@ -11,6 +11,7 @@ exports.handleHookStart = handleHookStart;
|
|
|
11
11
|
exports.handleHookStop = handleHookStop;
|
|
12
12
|
const clawck_1 = require("../core/clawck");
|
|
13
13
|
const session_1 = require("./session");
|
|
14
|
+
const logger_1 = require("../core/logger");
|
|
14
15
|
const fs_1 = __importDefault(require("fs"));
|
|
15
16
|
const path_1 = __importDefault(require("path"));
|
|
16
17
|
function logError(dataDir, message) {
|
|
@@ -27,6 +28,14 @@ function logError(dataDir, message) {
|
|
|
27
28
|
}
|
|
28
29
|
async function handleHookStart(config, context) {
|
|
29
30
|
try {
|
|
31
|
+
// If a session already exists for this session_id, skip creating a new entry.
|
|
32
|
+
// Claude Code fires UserPromptSubmit on every prompt, but session_id stays the
|
|
33
|
+
// same for the entire conversation. We only want one entry per conversation.
|
|
34
|
+
const existing = (0, session_1.loadSession)(config.data_dir, context.session_id);
|
|
35
|
+
if (existing) {
|
|
36
|
+
logger_1.logger.debug('hooks', `Session ${context.session_id.slice(0, 8)} already active, skipping start`);
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
30
39
|
const clawck = await new clawck_1.Clawck(config).ready();
|
|
31
40
|
try {
|
|
32
41
|
const entry = clawck.start({
|
|
@@ -43,7 +52,7 @@ async function handleHookStart(config, context) {
|
|
|
43
52
|
started_at: entry.start,
|
|
44
53
|
session_id: context.session_id,
|
|
45
54
|
});
|
|
46
|
-
|
|
55
|
+
logger_1.logger.info('hooks', `Started ${entry.id.slice(0, 8)} (${context.platform})`);
|
|
47
56
|
// Opportunistic cleanup of stale sessions
|
|
48
57
|
(0, session_1.cleanStaleSessions)(config.data_dir);
|
|
49
58
|
}
|
|
@@ -53,7 +62,7 @@ async function handleHookStart(config, context) {
|
|
|
53
62
|
}
|
|
54
63
|
catch (err) {
|
|
55
64
|
const msg = err instanceof Error ? err.message : String(err);
|
|
56
|
-
|
|
65
|
+
logger_1.logger.error('hooks', `Hook start error: ${msg}`);
|
|
57
66
|
logError(config.data_dir, `start error: ${msg}`);
|
|
58
67
|
}
|
|
59
68
|
}
|
|
@@ -61,9 +70,11 @@ async function handleHookStop(config, context) {
|
|
|
61
70
|
try {
|
|
62
71
|
const session = (0, session_1.loadSession)(config.data_dir, context.session_id);
|
|
63
72
|
if (!session) {
|
|
64
|
-
|
|
73
|
+
logger_1.logger.debug('hooks', 'Stop skipped — session already stopped or not started');
|
|
65
74
|
return;
|
|
66
75
|
}
|
|
76
|
+
const rawKeys = context.raw && typeof context.raw === 'object' ? Object.keys(context.raw).join(',') : '(none)';
|
|
77
|
+
logger_1.logger.debug('hooks', `Stop context: tokens_in=${context.tokens_in} tokens_out=${context.tokens_out} cost_usd=${context.cost_usd} tool_calls=${context.tool_calls} | raw_keys=[${rawKeys}]`);
|
|
67
78
|
const clawck = await new clawck_1.Clawck(config).ready();
|
|
68
79
|
try {
|
|
69
80
|
const entry = clawck.stop({
|
|
@@ -71,13 +82,14 @@ async function handleHookStop(config, context) {
|
|
|
71
82
|
status: 'completed',
|
|
72
83
|
tokens_in: context.tokens_in,
|
|
73
84
|
tokens_out: context.tokens_out,
|
|
85
|
+
cost_usd: context.cost_usd,
|
|
74
86
|
tool_calls: context.tool_calls,
|
|
75
87
|
});
|
|
76
88
|
(0, session_1.clearSession)(config.data_dir, context.session_id);
|
|
77
89
|
if (entry && entry.end) {
|
|
78
90
|
const durationMs = new Date(entry.end).getTime() - new Date(entry.start).getTime();
|
|
79
91
|
const durationMin = (durationMs / 60000).toFixed(1);
|
|
80
|
-
|
|
92
|
+
logger_1.logger.info('hooks', `Stopped ${entry.id.slice(0, 8)} (${durationMin}m)`);
|
|
81
93
|
}
|
|
82
94
|
}
|
|
83
95
|
finally {
|
|
@@ -86,7 +98,7 @@ async function handleHookStop(config, context) {
|
|
|
86
98
|
}
|
|
87
99
|
catch (err) {
|
|
88
100
|
const msg = err instanceof Error ? err.message : String(err);
|
|
89
|
-
|
|
101
|
+
logger_1.logger.error('hooks', `Hook stop error: ${msg}`);
|
|
90
102
|
logError(config.data_dir, `stop error: ${msg}`);
|
|
91
103
|
}
|
|
92
104
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/hooks/handler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/hooks/handler.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEzC,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnG,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEzC,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnG,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -33,6 +33,11 @@ export { INDUSTRY_BENCHMARKS, lookupBenchmark, getCategoryMedian, computeIndustr
|
|
|
33
33
|
export type { IndustryBenchmark } from './core/benchmarks';
|
|
34
34
|
export { compareEntry } from './core/personal';
|
|
35
35
|
export type { PersonalBaseline, PersonalComparisonResult } from './core/personal';
|
|
36
|
+
export { ClawckError, ValidationError, NotFoundError, ConfigError } from './core/errors';
|
|
37
|
+
export { validateConfig } from './core/config';
|
|
38
|
+
export type { ConfigValidationResult } from './core/config';
|
|
39
|
+
export { estimateCost, getModelPricing, MODEL_PRICING } from './core/pricing';
|
|
40
|
+
export type { ModelPricing } from './core/pricing';
|
|
36
41
|
export { validateEntry, migrateV1toV2, exportATP, importATP } from './core/atp';
|
|
37
42
|
export type { ATPExportEnvelope, EntryComparison } from './core/atp';
|
|
38
43
|
export { resolvePeriod } from './reports/periods';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAClG,YAAY,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACvH,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAChF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAClG,YAAY,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACvH,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC9E,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAChF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -37,7 +37,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
37
37
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
38
38
|
};
|
|
39
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
-
exports.resolvePeriod = exports.importATP = exports.exportATP = exports.migrateV1toV2 = exports.validateEntry = exports.compareEntry = exports.computeIndustryMultiplier = exports.getCategoryMedian = exports.lookupBenchmark = exports.INDUSTRY_BENCHMARKS = exports.DEFAULT_RUNTIME_CONFIG = exports.calculateWallClock = exports.estimateAgentRuntime = exports.startMCPServer = exports.startServer = exports.createServer = exports.SyncManager = exports.ClawckDB = exports.Clawck = void 0;
|
|
40
|
+
exports.resolvePeriod = exports.importATP = exports.exportATP = exports.migrateV1toV2 = exports.validateEntry = exports.MODEL_PRICING = exports.getModelPricing = exports.estimateCost = exports.validateConfig = exports.ConfigError = exports.NotFoundError = exports.ValidationError = exports.ClawckError = exports.compareEntry = exports.computeIndustryMultiplier = exports.getCategoryMedian = exports.lookupBenchmark = exports.INDUSTRY_BENCHMARKS = exports.DEFAULT_RUNTIME_CONFIG = exports.calculateWallClock = exports.estimateAgentRuntime = exports.startMCPServer = exports.startServer = exports.createServer = exports.SyncManager = exports.ClawckDB = exports.Clawck = void 0;
|
|
41
41
|
var clawck_1 = require("./core/clawck");
|
|
42
42
|
Object.defineProperty(exports, "Clawck", { enumerable: true, get: function () { return clawck_1.Clawck; } });
|
|
43
43
|
var database_1 = require("./core/database");
|
|
@@ -61,6 +61,17 @@ Object.defineProperty(exports, "getCategoryMedian", { enumerable: true, get: fun
|
|
|
61
61
|
Object.defineProperty(exports, "computeIndustryMultiplier", { enumerable: true, get: function () { return benchmarks_1.computeIndustryMultiplier; } });
|
|
62
62
|
var personal_1 = require("./core/personal");
|
|
63
63
|
Object.defineProperty(exports, "compareEntry", { enumerable: true, get: function () { return personal_1.compareEntry; } });
|
|
64
|
+
var errors_1 = require("./core/errors");
|
|
65
|
+
Object.defineProperty(exports, "ClawckError", { enumerable: true, get: function () { return errors_1.ClawckError; } });
|
|
66
|
+
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return errors_1.ValidationError; } });
|
|
67
|
+
Object.defineProperty(exports, "NotFoundError", { enumerable: true, get: function () { return errors_1.NotFoundError; } });
|
|
68
|
+
Object.defineProperty(exports, "ConfigError", { enumerable: true, get: function () { return errors_1.ConfigError; } });
|
|
69
|
+
var config_1 = require("./core/config");
|
|
70
|
+
Object.defineProperty(exports, "validateConfig", { enumerable: true, get: function () { return config_1.validateConfig; } });
|
|
71
|
+
var pricing_1 = require("./core/pricing");
|
|
72
|
+
Object.defineProperty(exports, "estimateCost", { enumerable: true, get: function () { return pricing_1.estimateCost; } });
|
|
73
|
+
Object.defineProperty(exports, "getModelPricing", { enumerable: true, get: function () { return pricing_1.getModelPricing; } });
|
|
74
|
+
Object.defineProperty(exports, "MODEL_PRICING", { enumerable: true, get: function () { return pricing_1.MODEL_PRICING; } });
|
|
64
75
|
var atp_1 = require("./core/atp");
|
|
65
76
|
Object.defineProperty(exports, "validateEntry", { enumerable: true, get: function () { return atp_1.validateEntry; } });
|
|
66
77
|
Object.defineProperty(exports, "migrateV1toV2", { enumerable: true, get: function () { return atp_1.migrateV1toV2; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;;;;;;;;;;;;;AAEH,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AACf,4CAA2C;AAAlC,oGAAA,QAAQ,OAAA;AACjB,oCAA0C;AAAjC,mGAAA,WAAW,OAAA;AACpB,oCAAyD;AAAhD,mGAAA,YAAY,OAAA;AAAE,kGAAA,WAAW,OAAA;AAClC,oCAA8C;AAArC,qGAAA,cAAc,OAAA;AACvB,+CAA6B;AAC7B,0CAAkG;AAAzF,+GAAA,oBAAoB,OAAA;AAAE,6GAAA,kBAAkB,OAAA;AAAE,iHAAA,sBAAsB,OAAA;AAEzE,gDAAuH;AAA9G,iHAAA,mBAAmB,OAAA;AAAE,6GAAA,eAAe,OAAA;AAAE,+GAAA,iBAAiB,OAAA;AAAE,uHAAA,yBAAyB,OAAA;AAE3F,4CAA+C;AAAtC,wGAAA,YAAY,OAAA;AAErB,kCAAgF;AAAvE,oGAAA,aAAa,OAAA;AAAE,oGAAA,aAAa,OAAA;AAAE,gGAAA,SAAS,OAAA;AAAE,gGAAA,SAAS,OAAA;AAE3D,6CAAkD;AAAzC,wGAAA,aAAa,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;;;;;;;;;;;;;AAEH,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AACf,4CAA2C;AAAlC,oGAAA,QAAQ,OAAA;AACjB,oCAA0C;AAAjC,mGAAA,WAAW,OAAA;AACpB,oCAAyD;AAAhD,mGAAA,YAAY,OAAA;AAAE,kGAAA,WAAW,OAAA;AAClC,oCAA8C;AAArC,qGAAA,cAAc,OAAA;AACvB,+CAA6B;AAC7B,0CAAkG;AAAzF,+GAAA,oBAAoB,OAAA;AAAE,6GAAA,kBAAkB,OAAA;AAAE,iHAAA,sBAAsB,OAAA;AAEzE,gDAAuH;AAA9G,iHAAA,mBAAmB,OAAA;AAAE,6GAAA,eAAe,OAAA;AAAE,+GAAA,iBAAiB,OAAA;AAAE,uHAAA,yBAAyB,OAAA;AAE3F,4CAA+C;AAAtC,wGAAA,YAAY,OAAA;AAErB,wCAAyF;AAAhF,qGAAA,WAAW,OAAA;AAAE,yGAAA,eAAe,OAAA;AAAE,uGAAA,aAAa,OAAA;AAAE,qGAAA,WAAW,OAAA;AACjE,wCAA+C;AAAtC,wGAAA,cAAc,OAAA;AAEvB,0CAA8E;AAArE,uGAAA,YAAY,OAAA;AAAE,0GAAA,eAAe,OAAA;AAAE,wGAAA,aAAa,OAAA;AAErD,kCAAgF;AAAvE,oGAAA,aAAa,OAAA;AAAE,oGAAA,aAAa,OAAA;AAAE,gGAAA,SAAS,OAAA;AAAE,gGAAA,SAAS,OAAA;AAE3D,6CAAkD;AAAzC,wGAAA,aAAa,OAAA"}
|
package/dist/reports/html.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* Generates interactive timesheet HTML reports.
|
|
2
|
+
* Clawck — HTML Report Generation
|
|
3
|
+
* Generates interactive timesheet HTML reports with light/dark theme support.
|
|
4
4
|
*/
|
|
5
5
|
import { TimesheetSummary, ClawckEntry, ReportStyle } from '../core/types';
|
|
6
6
|
export interface HTMLReportOptions {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/reports/html.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,iBAAiB,GACzB,MAAM,
|
|
1
|
+
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/reports/html.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,iBAAiB,GACzB,MAAM,CAyYR"}
|