pi-harness-runtime 1.1.441 → 1.1.443
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/package.json +1 -1
- package/packages/a2a-adapter/package.json +1 -1
- package/packages/agent-policy/package.json +1 -1
- package/packages/architecture-generator/package.json +1 -1
- package/packages/auth/package.json +1 -1
- package/packages/autonomous-refactor/package.json +1 -1
- package/packages/autonomous-runtime/package.json +1 -1
- package/packages/cache-strategy/package.json +1 -1
- package/packages/capability-registry/package.json +1 -1
- package/packages/checkpoint/package.json +1 -1
- package/packages/cli-plugin-sdk/package.json +1 -1
- package/packages/clipboard/package.json +1 -1
- package/packages/clipboard-plugin/package.json +1 -1
- package/packages/code-generation/package.json +1 -1
- package/packages/code-review/package.json +1 -1
- package/packages/codex-adapter/package.json +1 -1
- package/packages/codex-watcher/package.json +1 -1
- package/packages/config-capture/package.json +1 -1
- package/packages/connection-runtime/package.json +1 -1
- package/packages/context-compiler/package.json +1 -1
- package/packages/context-discovery/package.json +1 -1
- package/packages/context-manager/package.json +1 -1
- package/packages/contracts/package.json +1 -1
- package/packages/cookie-sanitizer/package.json +1 -1
- package/packages/cost-optimizer/package.json +1 -1
- package/packages/dependency-analyzer/package.json +1 -1
- package/packages/django-plugin/package.json +1 -1
- package/packages/doc-generator/package.json +1 -1
- package/packages/durable-review/package.json +1 -1
- package/packages/e2e-tester/package.json +1 -1
- package/packages/evaluation-engine/package.json +1 -1
- package/packages/evaluation-runner/package.json +1 -1
- package/packages/event-bus/package.json +1 -1
- package/packages/event-sink/package.json +1 -1
- package/packages/event-store/package.json +1 -1
- package/packages/experience-replay/package.json +1 -1
- package/packages/feedback-collector/package.json +1 -1
- package/packages/file-copy-helper/package.json +1 -1
- package/packages/framework-detector/package.json +1 -1
- package/packages/framework-plugin-sdk/package.json +1 -1
- package/packages/frappe-plugin/package.json +1 -1
- package/packages/generic-web-plugin/package.json +1 -1
- package/packages/health-monitor/package.json +1 -1
- package/packages/intent-analyzer/package.json +1 -1
- package/packages/jev-judge/package.json +1 -1
- package/packages/knowledge-graph/package.json +1 -1
- package/packages/knowledge-retrieval/package.json +1 -1
- package/packages/laravel-plugin/package.json +1 -1
- package/packages/learning-engine/package.json +1 -1
- package/packages/logging/package.json +1 -1
- package/packages/mcp-adapter/package.json +1 -1
- package/packages/memory-engine/package.json +1 -1
- package/packages/milestone-manager/package.json +1 -1
- package/packages/model-registry/package.json +1 -1
- package/packages/nextjs-plugin/package.json +1 -1
- package/packages/notification/package.json +1 -1
- package/packages/observability/package.json +1 -1
- package/packages/okf-indexer/dist/cli.d.ts +9 -1
- package/packages/okf-indexer/dist/cli.d.ts.map +1 -1
- package/packages/okf-indexer/dist/cli.js +31 -13
- package/packages/okf-indexer/dist/cli.js.map +1 -1
- package/packages/okf-indexer/package.json +1 -1
- package/packages/okf-indexer/src/cli.ts +36 -13
- package/packages/paperclip-integration/package.json +1 -1
- package/packages/performance-optimizer/package.json +1 -1
- package/packages/permission-mode/package.json +1 -1
- package/packages/privilege-broker/package.json +1 -1
- package/packages/project-analyzer/package.json +1 -1
- package/packages/project-bootstrap/package.json +1 -1
- package/packages/projection-engine/package.json +1 -1
- package/packages/prompt-compiler/package.json +1 -1
- package/packages/prompt-versioning/package.json +1 -1
- package/packages/provider-adapter-sdk/package.json +1 -1
- package/packages/provider-router/package.json +1 -1
- package/packages/provider-selector/package.json +1 -1
- package/packages/providers/package.json +1 -1
- package/packages/qdrant-skills/package.json +1 -1
- package/packages/quota-manager/package.json +1 -1
- package/packages/rate-limiter/package.json +1 -1
- package/packages/react-vite-plugin/package.json +1 -1
- package/packages/relay/package.json +1 -1
- package/packages/release-manager/package.json +1 -1
- package/packages/requirement-compiler/package.json +1 -1
- package/packages/runtime/package.json +1 -1
- package/packages/scheduler/package.json +1 -1
- package/packages/scheduler-adapter/package.json +1 -1
- package/packages/session/package.json +1 -1
- package/packages/session-api/package.json +1 -1
- package/packages/session-export/package.json +1 -1
- package/packages/shared-context/package.json +1 -1
- package/packages/skill-mcp-client/package.json +1 -1
- package/packages/skill-registry/package.json +1 -1
- package/packages/skills/package.json +1 -1
- package/packages/sprint-planner/package.json +1 -1
- package/packages/subscription-engine/package.json +1 -1
- package/packages/task-compiler/package.json +1 -1
- package/packages/tencentdb-memory/package.json +1 -1
- package/packages/tencentdb-sync/dist/cli.d.ts +29 -1
- package/packages/tencentdb-sync/dist/cli.d.ts.map +1 -1
- package/packages/tencentdb-sync/dist/cli.js +64 -40
- package/packages/tencentdb-sync/dist/cli.js.map +1 -1
- package/packages/tencentdb-sync/package.json +1 -1
- package/packages/tencentdb-sync/src/cli.ts +78 -42
- package/packages/test-data-generator/package.json +1 -1
- package/packages/test-generator/package.json +1 -1
- package/packages/todo-bd-sync/package.json +1 -1
- package/packages/token-estimation/package.json +1 -1
- package/packages/token-optimizer/package.json +1 -1
- package/packages/tooling-preference/package.json +1 -1
- package/packages/trajectory/package.json +1 -1
- package/packages/tui/package.json +1 -1
- package/packages/two-phase-review/package.json +1 -1
- package/packages/types/package.json +1 -1
- package/packages/voice-api/package.json +1 -1
- package/packages/webmcp-tester/package.json +1 -1
- package/packages/wiki/package.json +1 -1
- package/packages/workflow-events/package.json +1 -1
- package/packages/workspace-scanner/package.json +1 -1
- package/packages/worktree/package.json +1 -1
- package/packages/write-review/package.json +1 -1
|
@@ -7,9 +7,10 @@
|
|
|
7
7
|
import { readdirSync, readFileSync, statSync, existsSync } from "node:fs";
|
|
8
8
|
import { join, basename, extname } from "node:path";
|
|
9
9
|
import { homedir } from "node:os";
|
|
10
|
+
import { pathToFileURL } from "node:url";
|
|
10
11
|
import { createTencentDBClient } from "./client.js";
|
|
11
12
|
|
|
12
|
-
interface CliOptions {
|
|
13
|
+
export interface CliOptions {
|
|
13
14
|
source: string;
|
|
14
15
|
serverUrl: string;
|
|
15
16
|
userKey: string;
|
|
@@ -17,6 +18,7 @@ interface CliOptions {
|
|
|
17
18
|
watch: boolean;
|
|
18
19
|
dryRun: boolean;
|
|
19
20
|
force: boolean;
|
|
21
|
+
help: boolean;
|
|
20
22
|
}
|
|
21
23
|
|
|
22
24
|
interface SkillInfo {
|
|
@@ -113,10 +115,39 @@ function loadSkills(sourcePath: string): SkillInfo[] {
|
|
|
113
115
|
}
|
|
114
116
|
|
|
115
117
|
/**
|
|
116
|
-
*
|
|
118
|
+
* The help text of the command.
|
|
117
119
|
*/
|
|
118
|
-
|
|
119
|
-
|
|
120
|
+
export const HELP_TEXT = `
|
|
121
|
+
TencentDB Sync CLI
|
|
122
|
+
|
|
123
|
+
Usage:
|
|
124
|
+
tencentdb-sync [options]
|
|
125
|
+
|
|
126
|
+
Options:
|
|
127
|
+
--source, -s <path> Skills directory to sync (required)
|
|
128
|
+
--server, --url <url> TencentDB server URL (from TENANTDB_URL env)
|
|
129
|
+
--key, -k <key> User key (from TENANTDB_USER_KEY env)
|
|
130
|
+
--service-id <id> Service ID (default: "default")
|
|
131
|
+
--watch, -w Watch for file changes
|
|
132
|
+
--dry-run, -n Show what would be synced
|
|
133
|
+
--force, -f Force sync even if unchanged
|
|
134
|
+
--help, -h Show this help
|
|
135
|
+
|
|
136
|
+
Environment:
|
|
137
|
+
TENANTDB_URL Server URL (e.g., https://memory.example.com)
|
|
138
|
+
TENANTDB_USER_KEY User key (sk-mem-xxx)
|
|
139
|
+
TENANTDB_SERVICE_ID Service ID (default: default)
|
|
140
|
+
TENANTDB_SOURCE Default skills source path
|
|
141
|
+
`;
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* Parse CLI arguments.
|
|
145
|
+
*
|
|
146
|
+
* The parser does not print and does not exit: the command decides what
|
|
147
|
+
* to do with `--help`, and a caller that imports this module gets a
|
|
148
|
+
* description of the options instead of a terminated process.
|
|
149
|
+
*/
|
|
150
|
+
export function parseArgs(args: string[] = process.argv.slice(2)): CliOptions {
|
|
120
151
|
const options: CliOptions = {
|
|
121
152
|
source: "",
|
|
122
153
|
serverUrl: process.env.TENANTDB_URL || process.env.MEMORY_SERVER_URL || "",
|
|
@@ -128,6 +159,7 @@ function parseArgs(): CliOptions {
|
|
|
128
159
|
watch: false,
|
|
129
160
|
dryRun: false,
|
|
130
161
|
force: false,
|
|
162
|
+
help: false,
|
|
131
163
|
};
|
|
132
164
|
|
|
133
165
|
for (let i = 0; i < args.length; i++) {
|
|
@@ -162,29 +194,8 @@ function parseArgs(): CliOptions {
|
|
|
162
194
|
break;
|
|
163
195
|
case "--help":
|
|
164
196
|
case "-h":
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
Usage:
|
|
169
|
-
tencentdb-sync [options]
|
|
170
|
-
|
|
171
|
-
Options:
|
|
172
|
-
--source, -s <path> Skills directory to sync (required)
|
|
173
|
-
--server, --url <url> TencentDB server URL (from TENANTDB_URL env)
|
|
174
|
-
--key, -k <key> User key (from TENANTDB_USER_KEY env)
|
|
175
|
-
--service-id <id> Service ID (default: "default")
|
|
176
|
-
--watch, -w Watch for file changes
|
|
177
|
-
--dry-run, -n Show what would be synced
|
|
178
|
-
--force, -f Force sync even if unchanged
|
|
179
|
-
--help, -h Show this help
|
|
180
|
-
|
|
181
|
-
Environment:
|
|
182
|
-
TENANTDB_URL Server URL (e.g., https://memory.example.com)
|
|
183
|
-
TENANTDB_USER_KEY User key (sk-mem-xxx)
|
|
184
|
-
TENANTDB_SERVICE_ID Service ID (default: default)
|
|
185
|
-
TENANTDB_SOURCE Default skills source path
|
|
186
|
-
`);
|
|
187
|
-
process.exit(0);
|
|
197
|
+
options.help = true;
|
|
198
|
+
break;
|
|
188
199
|
}
|
|
189
200
|
}
|
|
190
201
|
|
|
@@ -285,11 +296,9 @@ async function sync(options: CliOptions): Promise<void> {
|
|
|
285
296
|
console.log();
|
|
286
297
|
|
|
287
298
|
if (!options.serverUrl || !options.userKey) {
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
`\nSet environment variables or use --server and --key options`,
|
|
299
|
+
throw new Error(
|
|
300
|
+
"Missing TENANTDB_URL or TENENTDB_USER_KEY\n\nSet environment variables or use --server and --key options",
|
|
291
301
|
);
|
|
292
|
-
process.exit(1);
|
|
293
302
|
}
|
|
294
303
|
|
|
295
304
|
// Create client
|
|
@@ -305,8 +314,7 @@ async function sync(options: CliOptions): Promise<void> {
|
|
|
305
314
|
console.log(`Server status: ${health.status}`);
|
|
306
315
|
if (health.version) console.log(`Version: ${health.version}`);
|
|
307
316
|
} catch (error) {
|
|
308
|
-
|
|
309
|
-
process.exit(1);
|
|
317
|
+
throw new Error(`Cannot connect to server: ${error}`);
|
|
310
318
|
}
|
|
311
319
|
|
|
312
320
|
// Load skills
|
|
@@ -348,16 +356,44 @@ async function sync(options: CliOptions): Promise<void> {
|
|
|
348
356
|
* Watch mode
|
|
349
357
|
*/
|
|
350
358
|
async function watch(_options: CliOptions): Promise<void> {
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
359
|
+
throw new Error(
|
|
360
|
+
"Watch mode not implemented yet. Use --dry-run to preview what would be synced.",
|
|
361
|
+
);
|
|
354
362
|
}
|
|
355
363
|
|
|
356
|
-
|
|
357
|
-
|
|
364
|
+
/**
|
|
365
|
+
* Run the command.
|
|
366
|
+
*
|
|
367
|
+
* The command reports a failure by throwing, not by terminating the
|
|
368
|
+
* process: the caller decides what a failure means.
|
|
369
|
+
*/
|
|
370
|
+
export async function main(
|
|
371
|
+
args: string[] = process.argv.slice(2),
|
|
372
|
+
): Promise<void> {
|
|
373
|
+
const options = parseArgs(args);
|
|
374
|
+
|
|
375
|
+
if (options.help) {
|
|
376
|
+
console.log(HELP_TEXT);
|
|
377
|
+
return;
|
|
378
|
+
}
|
|
358
379
|
|
|
359
|
-
if (options.watch) {
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
380
|
+
if (options.watch) {
|
|
381
|
+
await watch(options);
|
|
382
|
+
return;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
await sync(options);
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
// The command runs only when this file is the entry point. A module that
|
|
389
|
+
// imports it must not start a sync, and must not terminate the process
|
|
390
|
+
// of the importer.
|
|
391
|
+
const entry = process.argv[1];
|
|
392
|
+
if (entry && pathToFileURL(entry).href === import.meta.url) {
|
|
393
|
+
main().catch((error: unknown) => {
|
|
394
|
+
console.error(
|
|
395
|
+
`Error: ${error instanceof Error ? error.message : String(error)}`,
|
|
396
|
+
);
|
|
397
|
+
process.exit(1);
|
|
398
|
+
});
|
|
363
399
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-harness/two-phase-review",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.443",
|
|
4
4
|
"description": "pi-harness-runtime — two-phase implementation and review workflow (queue review signals, gate the phase, scope the diff)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|