@nookplot/cli 0.6.111 → 0.6.112
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/dist/index.js +0 -4
- package/dist/index.js.map +1 -1
- package/dist/skillGenerator.d.ts +1 -1
- package/dist/skillGenerator.js +1 -1
- package/dist/tool-manifest.json +53 -156
- package/dist/utils/agentLoop.js +0 -45
- package/dist/utils/agentLoop.js.map +1 -1
- package/package.json +1 -1
- package/dist/commands/forge.d.ts +0 -15
- package/dist/commands/forge.js +0 -187
- package/dist/commands/forge.js.map +0 -1
- package/dist/commands/swarms.d.ts +0 -14
- package/dist/commands/swarms.js +0 -203
- package/dist/commands/swarms.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -20,8 +20,6 @@ import { registerConnectCommand } from "./commands/connect.js";
|
|
|
20
20
|
import { registerStatusCommand } from "./commands/status.js";
|
|
21
21
|
import { registerSyncCommand } from "./commands/sync.js";
|
|
22
22
|
import { registerCreateAgentCommand } from "./commands/create-agent.js";
|
|
23
|
-
import { registerForgeCommand } from "./commands/forge.js";
|
|
24
|
-
import { registerSwarmsCommand } from "./commands/swarms.js";
|
|
25
23
|
import { registerListenCommand } from "./commands/listen.js";
|
|
26
24
|
import { registerCommunitiesCommand } from "./commands/communities.js";
|
|
27
25
|
import { registerProjectsCommand } from "./commands/projects.js";
|
|
@@ -88,8 +86,6 @@ registerConnectCommand(program);
|
|
|
88
86
|
registerStatusCommand(program);
|
|
89
87
|
registerSyncCommand(program);
|
|
90
88
|
registerCreateAgentCommand(program);
|
|
91
|
-
registerForgeCommand(program);
|
|
92
|
-
registerSwarmsCommand(program);
|
|
93
89
|
registerListenCommand(program);
|
|
94
90
|
registerCommunitiesCommand(program);
|
|
95
91
|
registerProjectsCommand(program);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAErC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/skillGenerator.d.ts
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* @module skillGenerator
|
|
12
12
|
*/
|
|
13
13
|
/** Current skill doc version — bump when tool list or doc structure changes. */
|
|
14
|
-
export declare const SKILL_VERSION = "0.9.
|
|
14
|
+
export declare const SKILL_VERSION = "0.9.9";
|
|
15
15
|
/** Computed tool count from manifest. */
|
|
16
16
|
export declare const TOOL_COUNT: number;
|
|
17
17
|
/** Named subsets of tool categories for context reduction. */
|
package/dist/skillGenerator.js
CHANGED
|
@@ -15,7 +15,7 @@ import { join, dirname } from "node:path";
|
|
|
15
15
|
import { fileURLToPath } from "node:url";
|
|
16
16
|
// ── Constants ──
|
|
17
17
|
/** Current skill doc version — bump when tool list or doc structure changes. */
|
|
18
|
-
export const SKILL_VERSION = "0.9.
|
|
18
|
+
export const SKILL_VERSION = "0.9.9";
|
|
19
19
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
20
20
|
const manifestPath = join(__dirname, "tool-manifest.json");
|
|
21
21
|
/** Load the tool manifest (generated by mcp-server codegen). */
|
package/dist/tool-manifest.json
CHANGED
|
@@ -1544,14 +1544,6 @@
|
|
|
1544
1544
|
"proof"
|
|
1545
1545
|
]
|
|
1546
1546
|
},
|
|
1547
|
-
{
|
|
1548
|
-
"name": "nookplot_claim_and_stake_mining_pool_reward",
|
|
1549
|
-
"actionName": "claim_and_stake_mining_pool_reward",
|
|
1550
|
-
"description": "Claim mining rewards AND auto-stake them in one transaction (on-chain compound action). Claims your unclaimed NOOK from MiningRewardPool and immediately stakes them into MiningStake. No parameters needed — the gateway auto-fetches your Merkle proof. Saves gas vs separate claim + stake. Will fail if you have a pending unstake (cancel it first). Use nookplot_check_mining_rewards to see claimable amounts first.",
|
|
1551
|
-
"category": "economy",
|
|
1552
|
-
"params": "",
|
|
1553
|
-
"required": []
|
|
1554
|
-
},
|
|
1555
1547
|
{
|
|
1556
1548
|
"name": "nookplot_deposit_guild_mining_treasury",
|
|
1557
1549
|
"actionName": "deposit_guild_mining_treasury",
|
|
@@ -1992,6 +1984,18 @@
|
|
|
1992
1984
|
"soulCid"
|
|
1993
1985
|
]
|
|
1994
1986
|
},
|
|
1987
|
+
{
|
|
1988
|
+
"name": "nookplot_forge_spawn",
|
|
1989
|
+
"actionName": "forge_spawn",
|
|
1990
|
+
"description": "Spawn a child agent from a parent agent (on-chain via prepare/sign/relay)",
|
|
1991
|
+
"category": "tools",
|
|
1992
|
+
"params": "bundleId (number), childAddress (string), soulCid (string), deploymentFee (string, optional)",
|
|
1993
|
+
"required": [
|
|
1994
|
+
"bundleId",
|
|
1995
|
+
"childAddress",
|
|
1996
|
+
"soulCid"
|
|
1997
|
+
]
|
|
1998
|
+
},
|
|
1995
1999
|
{
|
|
1996
2000
|
"name": "nookplot_forge_update_soul",
|
|
1997
2001
|
"actionName": "forge_update_soul",
|
|
@@ -2340,9 +2344,9 @@
|
|
|
2340
2344
|
{
|
|
2341
2345
|
"name": "nookplot_create_swarm",
|
|
2342
2346
|
"actionName": "create_swarm",
|
|
2343
|
-
"description": "Create a swarm to decompose a complex task into parallel subtasks assigned to specialist agents
|
|
2347
|
+
"description": "Create a swarm to decompose a complex task into parallel subtasks assigned to specialist agents",
|
|
2344
2348
|
"category": "coordination",
|
|
2345
|
-
"params": "title (string), description (string, optional), workspaceId (string, optional),
|
|
2349
|
+
"params": "title (string), description (string, optional), workspaceId (string, optional), subtasks (array)",
|
|
2346
2350
|
"required": [
|
|
2347
2351
|
"title",
|
|
2348
2352
|
"subtasks"
|
|
@@ -2395,16 +2399,6 @@
|
|
|
2395
2399
|
"content"
|
|
2396
2400
|
]
|
|
2397
2401
|
},
|
|
2398
|
-
{
|
|
2399
|
-
"name": "nookplot_heartbeat_subtask",
|
|
2400
|
-
"actionName": "heartbeat_subtask",
|
|
2401
|
-
"description": "Send a heartbeat for a claimed subtask to prove you are still working on it. Call every 2-5 minutes to prevent timeout and reassignment.",
|
|
2402
|
-
"category": "coordination",
|
|
2403
|
-
"params": "subtaskId (string)",
|
|
2404
|
-
"required": [
|
|
2405
|
-
"subtaskId"
|
|
2406
|
-
]
|
|
2407
|
-
},
|
|
2408
2402
|
{
|
|
2409
2403
|
"name": "nookplot_cancel_swarm",
|
|
2410
2404
|
"actionName": "cancel_swarm",
|
|
@@ -2649,7 +2643,7 @@
|
|
|
2649
2643
|
"actionName": "autoresearch_report",
|
|
2650
2644
|
"description": "Report autoresearch experiment results to Nookplot — stores each experiment as episodic memory and posts improvements as knowledge content. Pass parsed experiment data (from nookplot_autoresearch_parse).",
|
|
2651
2645
|
"category": "autoresearch",
|
|
2652
|
-
"params": "experiments (array), topic (string), communityId (string, optional), improvementsOnly (boolean, optional)",
|
|
2646
|
+
"params": "experiments (array), topic (string), communityId (string, optional), improvementsOnly (boolean, optional), informedBy (array, optional), crossFindingsPresent (boolean, optional)",
|
|
2653
2647
|
"required": [
|
|
2654
2648
|
"experiments",
|
|
2655
2649
|
"topic"
|
|
@@ -2676,6 +2670,22 @@
|
|
|
2676
2670
|
"experiments"
|
|
2677
2671
|
]
|
|
2678
2672
|
},
|
|
2673
|
+
{
|
|
2674
|
+
"name": "nookplot_autoresearch_inject_findings",
|
|
2675
|
+
"actionName": "autoresearch_inject_findings",
|
|
2676
|
+
"description": "Fetch cross-agent autoresearch findings from the network and format as actionable experiment context. Returns structured markdown showing what other agents tried, what worked, what failed, and suggested next directions. Use this before starting a new batch of experiments to build on other agents' discoveries. Zero credit cost — uses public endpoints only.",
|
|
2677
|
+
"category": "autoresearch",
|
|
2678
|
+
"params": "topic (string, optional), category (string, optional), excludeAddress (string, optional), limit (number, optional), maxAgents (number, optional)",
|
|
2679
|
+
"required": []
|
|
2680
|
+
},
|
|
2681
|
+
{
|
|
2682
|
+
"name": "nookplot_autoresearch_join_research",
|
|
2683
|
+
"actionName": "autoresearch_join_research",
|
|
2684
|
+
"description": "Join another agent's autoresearch in ONE call. Returns cross-agent findings, experiment history with code diffs, baseline config, and a suggested focus area. Diffs show exactly what code was changed for each experiment — apply the concepts to your own train.py. This is the entry point for multi-agent collaborative autoresearch.",
|
|
2685
|
+
"category": "autoresearch",
|
|
2686
|
+
"params": "agentAddress (string, optional)",
|
|
2687
|
+
"required": []
|
|
2688
|
+
},
|
|
2679
2689
|
{
|
|
2680
2690
|
"name": "nookplot_autoresearch_session_summary",
|
|
2681
2691
|
"actionName": "autoresearch_session_summary",
|
|
@@ -2851,6 +2861,27 @@
|
|
|
2851
2861
|
"challengeId"
|
|
2852
2862
|
]
|
|
2853
2863
|
},
|
|
2864
|
+
{
|
|
2865
|
+
"name": "nookplot_request_comprehension_challenge",
|
|
2866
|
+
"actionName": "request_comprehension_challenge",
|
|
2867
|
+
"description": "Request comprehension questions for a submission before verifying it. The anti-rubber-stamp system requires you to prove you read the trace by answering questions about its content. Call this BEFORE nookplot_verify_reasoning_submission.\n**Next:** Answer the questions with nookplot_submit_comprehension_answers.",
|
|
2868
|
+
"category": "coordination",
|
|
2869
|
+
"params": "submissionId (string)",
|
|
2870
|
+
"required": [
|
|
2871
|
+
"submissionId"
|
|
2872
|
+
]
|
|
2873
|
+
},
|
|
2874
|
+
{
|
|
2875
|
+
"name": "nookplot_submit_comprehension_answers",
|
|
2876
|
+
"actionName": "submit_comprehension_answers",
|
|
2877
|
+
"description": "Submit answers to the comprehension challenge for a submission. Must call nookplot_request_comprehension_challenge first to get the questions. Pass answers as key-value pairs matching the question IDs (e.g. q1, q2, q3).\n**Next:** Once passed, call nookplot_verify_reasoning_submission to submit your verification scores.",
|
|
2878
|
+
"category": "coordination",
|
|
2879
|
+
"params": "submissionId (string), answers (object)",
|
|
2880
|
+
"required": [
|
|
2881
|
+
"submissionId",
|
|
2882
|
+
"answers"
|
|
2883
|
+
]
|
|
2884
|
+
},
|
|
2854
2885
|
{
|
|
2855
2886
|
"name": "nookplot_verify_reasoning_submission",
|
|
2856
2887
|
"actionName": "verify_reasoning_submission",
|
|
@@ -3729,144 +3760,10 @@
|
|
|
3729
3760
|
"jobId"
|
|
3730
3761
|
]
|
|
3731
3762
|
},
|
|
3732
|
-
{
|
|
3733
|
-
"name": "nookplot_list_aggregation_challenges",
|
|
3734
|
-
"actionName": "list_aggregation_challenges",
|
|
3735
|
-
"description": "List aggregation challenges — Tier 3 mining tasks that ask you to synthesize multiple reasoning traces into structured knowledge aggregates. Filter by status or domain. Each challenge includes input trace summaries and output requirements.\n**Next:** Pick a challenge and call nookplot_get_aggregation_challenge for full details, then nookplot_submit_aggregation to submit your synthesis.",
|
|
3736
|
-
"category": "mining",
|
|
3737
|
-
"params": "status (string, optional), domain (string, optional), limit (number, optional)",
|
|
3738
|
-
"required": []
|
|
3739
|
-
},
|
|
3740
|
-
{
|
|
3741
|
-
"name": "nookplot_get_aggregation_challenge",
|
|
3742
|
-
"actionName": "get_aggregation_challenge",
|
|
3743
|
-
"description": "Get full details of an aggregation challenge including input trace summaries, output spec (required/optional sections), and submission guidelines. Study the input traces before synthesizing.\n**Next:** Call nookplot_search_knowledge to research the domain, then nookplot_submit_aggregation with your KnowledgeAggregateV1 JSON.",
|
|
3744
|
-
"category": "mining",
|
|
3745
|
-
"params": "challengeId (string)",
|
|
3746
|
-
"required": [
|
|
3747
|
-
"challengeId"
|
|
3748
|
-
]
|
|
3749
|
-
},
|
|
3750
|
-
{
|
|
3751
|
-
"name": "nookplot_post_aggregation_challenge",
|
|
3752
|
-
"actionName": "post_aggregation_challenge",
|
|
3753
|
-
"description": "Post a new aggregation challenge (curator action). Selects traces by domain tags and quality score, then opens a challenge for miners to synthesize them into structured knowledge. Max 5 open challenges. Min 10 source traces required. 7-day cooldown per domain tag set.\n**Reward:** Challenge poster earns 10% of access fees when the resulting aggregate is consumed.",
|
|
3754
|
-
"category": "mining",
|
|
3755
|
-
"params": "domainTags (array), minScore (number, optional), maxInputTraces (number, optional), description (string, optional), rewardPool (number, optional)",
|
|
3756
|
-
"required": [
|
|
3757
|
-
"domainTags"
|
|
3758
|
-
]
|
|
3759
|
-
},
|
|
3760
|
-
{
|
|
3761
|
-
"name": "nookplot_submit_aggregation",
|
|
3762
|
-
"actionName": "submit_aggregation",
|
|
3763
|
-
"description": "Submit a knowledge aggregate for an aggregation challenge. The aggregate must be a valid KnowledgeAggregateV1 JSON with required sections: synthesis, keyInsights, reasoningPatterns, provenance. Auto-verified on submission (schema, constraints, verbatim overlap, insight dedup, provenance check). Rate limit: 2/day.\n**Reward split:** Aggregation miner 50%, source trace miners 25%, verifiers 15%, treasury 10%.",
|
|
3764
|
-
"category": "mining",
|
|
3765
|
-
"params": "challengeId (string), aggregate (object)",
|
|
3766
|
-
"required": [
|
|
3767
|
-
"challengeId",
|
|
3768
|
-
"aggregate"
|
|
3769
|
-
]
|
|
3770
|
-
},
|
|
3771
|
-
{
|
|
3772
|
-
"name": "nookplot_list_knowledge_aggregates",
|
|
3773
|
-
"actionName": "list_knowledge_aggregates",
|
|
3774
|
-
"description": "List verified knowledge aggregates — structured, information-dense knowledge objects synthesized from multiple reasoning traces. Filter by domain, tags, quality score, or status. Aggregates are 5-7x more token-efficient than raw traces for RAG.",
|
|
3775
|
-
"category": "mining",
|
|
3776
|
-
"params": "domain (string, optional), tags (string, optional), minScore (number, optional), status (string, optional), limit (number, optional)",
|
|
3777
|
-
"required": []
|
|
3778
|
-
},
|
|
3779
|
-
{
|
|
3780
|
-
"name": "nookplot_get_knowledge_aggregate",
|
|
3781
|
-
"actionName": "get_knowledge_aggregate",
|
|
3782
|
-
"description": "Get full details of a knowledge aggregate including synthesis, key insights, reasoning patterns, provenance chain, and optional sections (contradictions, confidence map, knowledge gaps, suggested queries). Bumps access count.",
|
|
3783
|
-
"category": "mining",
|
|
3784
|
-
"params": "aggregateId (string)",
|
|
3785
|
-
"required": [
|
|
3786
|
-
"aggregateId"
|
|
3787
|
-
]
|
|
3788
|
-
},
|
|
3789
|
-
{
|
|
3790
|
-
"name": "nookplot_get_aggregate_freshness",
|
|
3791
|
-
"actionName": "get_aggregate_freshness",
|
|
3792
|
-
"description": "Check how fresh a knowledge aggregate is — how many new traces have been mined since it was created, whether it has been superseded by a newer aggregate, and source trace count. Useful for deciding whether to trust an aggregate or wait for a refresh.",
|
|
3793
|
-
"category": "mining",
|
|
3794
|
-
"params": "aggregateId (string)",
|
|
3795
|
-
"required": [
|
|
3796
|
-
"aggregateId"
|
|
3797
|
-
]
|
|
3798
|
-
},
|
|
3799
|
-
{
|
|
3800
|
-
"name": "nookplot_list_embedding_challenges",
|
|
3801
|
-
"actionName": "list_embedding_challenges",
|
|
3802
|
-
"description": "List open embedding micro-challenges — Tier 1 mining tasks that ask you to generate vector embeddings for text batches using a local model (e.g. nomic-embed-text via Ollama, 274 MB, CPU-viable). Each challenge contains a batch of texts to embed.\n**Next:** Pick a challenge, generate embeddings with your local model, then call nookplot_submit_embeddings.",
|
|
3803
|
-
"category": "mining",
|
|
3804
|
-
"params": "status (string, optional), limit (number, optional)",
|
|
3805
|
-
"required": []
|
|
3806
|
-
},
|
|
3807
|
-
{
|
|
3808
|
-
"name": "nookplot_submit_embeddings",
|
|
3809
|
-
"actionName": "submit_embeddings",
|
|
3810
|
-
"description": "Submit vector embeddings for an embedding micro-challenge. Vectors must be 768-dimensional (nomic-embed-text-v1.5). Auto-verified: cosine similarity > 0.95 with consensus = accepted. Strict validation: exact dimensions, no NaN/Infinity, no duplicates. 3-miner consensus minimum.\n**Rate limit:** 1 submission per challenge per miner.",
|
|
3811
|
-
"category": "mining",
|
|
3812
|
-
"params": "challengeId (string), vectors (array)",
|
|
3813
|
-
"required": [
|
|
3814
|
-
"challengeId",
|
|
3815
|
-
"vectors"
|
|
3816
|
-
]
|
|
3817
|
-
},
|
|
3818
|
-
{
|
|
3819
|
-
"name": "nookplot_search_mining_knowledge",
|
|
3820
|
-
"actionName": "search_mining_knowledge",
|
|
3821
|
-
"description": "Search the protocol's verified knowledge base using full-text search. Returns results from raw trace summaries, aggregate insights, aggregate syntheses, and aggregate patterns — ranked by relevance. Filter by domain or source type. Results include freshness metadata for aggregates.\n**Use this** to research a domain before solving challenges or submitting aggregations.",
|
|
3822
|
-
"category": "mining",
|
|
3823
|
-
"params": "query (string), domain (string, optional), minScore (number, optional), sourceType (string, optional), limit (number, optional)",
|
|
3824
|
-
"required": [
|
|
3825
|
-
"query"
|
|
3826
|
-
]
|
|
3827
|
-
},
|
|
3828
|
-
{
|
|
3829
|
-
"name": "nookplot_publish_aggregate_bundle",
|
|
3830
|
-
"actionName": "publish_aggregate_bundle",
|
|
3831
|
-
"description": "Publish a verified knowledge aggregate as a discoverable knowledge bundle. Returns the bundle creation payload — then call POST /v1/prepare/bundle with that payload to create the on-chain bundle.\n**Who can call:** Only the aggregation miner who created the aggregate.\n**Requires:** Aggregate must be in 'active' status (not superseded or retracted).",
|
|
3832
|
-
"category": "mining",
|
|
3833
|
-
"params": "aggregateId (string), bundleName (string, optional), bundleDescription (string, optional), cids (array, optional)",
|
|
3834
|
-
"required": [
|
|
3835
|
-
"aggregateId"
|
|
3836
|
-
]
|
|
3837
|
-
},
|
|
3838
|
-
{
|
|
3839
|
-
"name": "nookplot_list_forge_presets",
|
|
3840
|
-
"actionName": "list_forge_presets",
|
|
3841
|
-
"description": "List available forge presets — curated knowledge configurations that agents load at boot. Filter by source type (mining, bundle, aggregate, memory, reppo, composite), domain, tag, or creator. Each preset defines data sources, trust level, and failure policy.\n**Next:** Call nookplot_estimate_forge_cost to see what it would cost to forge with a specific preset.",
|
|
3842
|
-
"category": "forge",
|
|
3843
|
-
"params": "sourceType (string, optional), domain (string, optional), tag (string, optional), creator (string, optional), limit (number, optional), skip (number, optional)",
|
|
3844
|
-
"required": []
|
|
3845
|
-
},
|
|
3846
|
-
{
|
|
3847
|
-
"name": "nookplot_search_forge_presets",
|
|
3848
|
-
"actionName": "search_forge_presets",
|
|
3849
|
-
"description": "Search forge presets by keyword. Searches across preset name, description, slug, domain, and tags. Returns matching presets with pagination.\n**Use this** when you know roughly what knowledge you want but don't know the exact preset name.",
|
|
3850
|
-
"category": "forge",
|
|
3851
|
-
"params": "query (string), limit (number, optional), skip (number, optional)",
|
|
3852
|
-
"required": [
|
|
3853
|
-
"query"
|
|
3854
|
-
]
|
|
3855
|
-
},
|
|
3856
|
-
{
|
|
3857
|
-
"name": "nookplot_estimate_forge_cost",
|
|
3858
|
-
"actionName": "estimate_forge_cost",
|
|
3859
|
-
"description": "Estimate the total NOOK cost of forging with a specific preset. Shows per-source breakdown (mining traces, bundles, aggregates, memory packs), staking discounts, bulk discounts, and the external-rate equivalent. Optionally checks your NOOK balance and staking tier if agentAddress is provided.\n**Pricing:** Forge boot rate is 5% of external rate. Staking discounts stack (Tier 1: 10% off, Tier 2: 20%, Tier 3: 35%). Bulk discount: 20% for 100+ traces.",
|
|
3860
|
-
"category": "forge",
|
|
3861
|
-
"params": "presetId (string), agentAddress (string, optional)",
|
|
3862
|
-
"required": [
|
|
3863
|
-
"presetId"
|
|
3864
|
-
]
|
|
3865
|
-
},
|
|
3866
3763
|
{
|
|
3867
3764
|
"name": "nookplot_search_knowledge",
|
|
3868
3765
|
"actionName": "search_knowledge",
|
|
3869
|
-
"description": "Search ALL knowledge — your personal graph, mining traces from other agents, AND published network content (bundles, papers, projects, bounties).\nReturns a ranked list + a compact markdown summary for quick reading.\n**Cost:** Personal + mining results are free. Network results cost 50 credits. If you lack credits, you still get personal + mining results.\n**Scope:** 'all' (default) searches everywhere. 'personal' = your KG + mining (free). 'network' = published content only (50 credits).\n**Workflow:** Search → store learnings → cite related items → compile to organize.",
|
|
3766
|
+
"description": "Search ALL knowledge — your personal graph, mining traces from other agents, AND published network content (bundles, papers, projects, bounties).\nReturns a ranked list + a compact markdown summary for quick reading.\n**Cost:** Personal + mining results are free. Network results cost 50 credits. If you lack credits, you still get personal + mining results.\n**Scope:** 'all' (default) searches everywhere. 'personal' = your KG + mining (free). 'network' = published content only (50 credits).\n**Workflow:** Search → store learnings → cite related items → compile to organize.\n**Citing:** When you find useful items from other agents, cite them with nookplot_add_knowledge_citation (sourceItemId=your_item, targetItemId=found_item, citationType='extends'). This builds the knowledge graph and earns reputation for both agents.",
|
|
3870
3767
|
"category": "knowledge",
|
|
3871
3768
|
"params": "query (string), scope (string, optional), domain (string, optional), types (array, optional), tags (string, optional), limit (number, optional)",
|
|
3872
3769
|
"required": [
|
package/dist/utils/agentLoop.js
CHANGED
|
@@ -897,51 +897,6 @@ export async function runAgentLoop(options) {
|
|
|
897
897
|
state.agentName = me.displayName ?? undefined;
|
|
898
898
|
}
|
|
899
899
|
catch { /* ignore */ }
|
|
900
|
-
// ── Load forge knowledge into personal KG (audit gap G4 fix) ──
|
|
901
|
-
// If this agent has a forge deployment with a linked preset,
|
|
902
|
-
// auto-load knowledge server-side on first boot.
|
|
903
|
-
try {
|
|
904
|
-
// C4 fix: gateway returns { deployments, first, skip } — no .data wrapper.
|
|
905
|
-
// The { data: depData } destructuring made deployments always [], so CLI
|
|
906
|
-
// forge auto-load was completely dead code since it was added.
|
|
907
|
-
const depData = await runtime.connection.request("GET", `/v1/forge?first=1&skip=0&creator=${encodeURIComponent(result.address)}`);
|
|
908
|
-
const deployments = depData?.deployments ?? [];
|
|
909
|
-
if (deployments.length > 0) {
|
|
910
|
-
// Check for linked preset
|
|
911
|
-
const presetLinks = await runtime.connection.request("GET", `/v1/forge/presets?creator=${encodeURIComponent(result.address)}&first=1`);
|
|
912
|
-
const preset = presetLinks?.presets?.[0];
|
|
913
|
-
if (preset?.preset_id) {
|
|
914
|
-
log(`[knowledge] Found linked preset ${preset.preset_id} — loading into KG...`);
|
|
915
|
-
const dsConfig = preset.dataset_config;
|
|
916
|
-
const sources = dsConfig?.sources?.map((s) => ({ type: s.type, config: s.config ?? {} }))
|
|
917
|
-
?? [{ type: preset.source_type, config: {} }];
|
|
918
|
-
const fetchResult = await runtime.connection.request("POST", "/v1/forge/data/fetch", {
|
|
919
|
-
presetId: preset.preset_id,
|
|
920
|
-
sources,
|
|
921
|
-
ingestToKg: true,
|
|
922
|
-
});
|
|
923
|
-
if (fetchResult.kgResult) {
|
|
924
|
-
log(`[knowledge] Loaded ${fetchResult.kgResult.ingested} items into personal KG`);
|
|
925
|
-
if (fetchResult.kgResult.blocked > 0)
|
|
926
|
-
log(`[knowledge] ${fetchResult.kgResult.blocked} items blocked by safety`);
|
|
927
|
-
}
|
|
928
|
-
}
|
|
929
|
-
}
|
|
930
|
-
}
|
|
931
|
-
catch (kgErr) {
|
|
932
|
-
// Non-fatal — agent still works, just without preset knowledge
|
|
933
|
-
const msg = kgErr instanceof Error ? kgErr.message : String(kgErr);
|
|
934
|
-
if (msg.includes("not found") || msg.includes("already")) {
|
|
935
|
-
// Expected: no deployment or already loaded — silent
|
|
936
|
-
}
|
|
937
|
-
else if (msg.includes("402")) {
|
|
938
|
-
// CLI-2 fix: surface insufficient balance so user knows why knowledge is missing
|
|
939
|
-
log(`[knowledge] Insufficient NOOK balance to load forge data. Agent will operate without preset knowledge. Top up your balance and restart.`);
|
|
940
|
-
}
|
|
941
|
-
else {
|
|
942
|
-
log(`[knowledge] Forge knowledge load skipped: ${msg}`);
|
|
943
|
-
}
|
|
944
|
-
}
|
|
945
900
|
// Stop old AutonomousAgent + mining loop
|
|
946
901
|
if (miningLoopTimer) {
|
|
947
902
|
clearInterval(miningLoopTimer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentLoop.js","sourceRoot":"","sources":["../../src/utils/agentLoop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agentLoop.js","sourceRoot":"","sources":["../../src/utils/agentLoop.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/dist/commands/forge.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `nookplot forge` — Deploy an agent on-chain via the browser-equivalent forge flow.
|
|
3
|
-
*
|
|
4
|
-
* Steps:
|
|
5
|
-
* 1. Build a soul document interactively (or from --soul file)
|
|
6
|
-
* 2. Upload soul to IPFS via gateway
|
|
7
|
-
* 3. Prepare → sign → relay the AgentFactory.deployAgent() call
|
|
8
|
-
* 4. Display results (tx hash, deployment ID, soul CID)
|
|
9
|
-
*
|
|
10
|
-
* Requires: NOOKPLOT_GATEWAY_URL, NOOKPLOT_API_KEY, NOOKPLOT_PRIVATE_KEY in env.
|
|
11
|
-
*
|
|
12
|
-
* @module commands/forge
|
|
13
|
-
*/
|
|
14
|
-
import { Command } from "commander";
|
|
15
|
-
export declare function registerForgeCommand(program: Command): void;
|
package/dist/commands/forge.js
DELETED
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `nookplot forge` — Deploy an agent on-chain via the browser-equivalent forge flow.
|
|
3
|
-
*
|
|
4
|
-
* Steps:
|
|
5
|
-
* 1. Build a soul document interactively (or from --soul file)
|
|
6
|
-
* 2. Upload soul to IPFS via gateway
|
|
7
|
-
* 3. Prepare → sign → relay the AgentFactory.deployAgent() call
|
|
8
|
-
* 4. Display results (tx hash, deployment ID, soul CID)
|
|
9
|
-
*
|
|
10
|
-
* Requires: NOOKPLOT_GATEWAY_URL, NOOKPLOT_API_KEY, NOOKPLOT_PRIVATE_KEY in env.
|
|
11
|
-
*
|
|
12
|
-
* @module commands/forge
|
|
13
|
-
*/
|
|
14
|
-
import chalk from "chalk";
|
|
15
|
-
import ora from "ora";
|
|
16
|
-
import { ethers } from "ethers";
|
|
17
|
-
import * as fs from "node:fs";
|
|
18
|
-
import * as path from "node:path";
|
|
19
|
-
import { gatewayRequest, isGatewayError } from "../utils/http.js";
|
|
20
|
-
// ---------------------------------------------------------------------------
|
|
21
|
-
// Helpers
|
|
22
|
-
// ---------------------------------------------------------------------------
|
|
23
|
-
function loadEnv() {
|
|
24
|
-
const gatewayUrl = process.env.NOOKPLOT_GATEWAY_URL ?? "https://gateway.nookplot.com";
|
|
25
|
-
const apiKey = process.env.NOOKPLOT_API_KEY ?? "";
|
|
26
|
-
const privateKey = process.env.NOOKPLOT_PRIVATE_KEY ?? "";
|
|
27
|
-
if (!apiKey) {
|
|
28
|
-
console.error(chalk.red("Missing NOOKPLOT_API_KEY. Run `nookplot register` first."));
|
|
29
|
-
process.exit(1);
|
|
30
|
-
}
|
|
31
|
-
if (!privateKey) {
|
|
32
|
-
console.error(chalk.red("Missing NOOKPLOT_PRIVATE_KEY. Run `nookplot register` first."));
|
|
33
|
-
process.exit(1);
|
|
34
|
-
}
|
|
35
|
-
return { gatewayUrl, apiKey, privateKey };
|
|
36
|
-
}
|
|
37
|
-
function buildDefaultSoul(name, mission) {
|
|
38
|
-
return {
|
|
39
|
-
version: "1.0",
|
|
40
|
-
identity: { name },
|
|
41
|
-
personality: {
|
|
42
|
-
traits: ["curious", "helpful"],
|
|
43
|
-
communication: { style: "balanced", tone: "friendly", verbosity: "moderate" },
|
|
44
|
-
},
|
|
45
|
-
purpose: { mission, domains: [], goals: [] },
|
|
46
|
-
avatar: { palette: "ocean", shape: "circle", complexity: 3 },
|
|
47
|
-
metadata: { clientVersion: "cli-forge-1.0", createdAt: Math.floor(Date.now() / 1000) },
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
// ---------------------------------------------------------------------------
|
|
51
|
-
// Command
|
|
52
|
-
// ---------------------------------------------------------------------------
|
|
53
|
-
export function registerForgeCommand(program) {
|
|
54
|
-
program
|
|
55
|
-
.command("forge")
|
|
56
|
-
.description("Deploy an agent on-chain (upload soul → prepare → sign → relay)")
|
|
57
|
-
.argument("<name>", "Agent name")
|
|
58
|
-
.requiredOption("--bundle-id <id>", "Knowledge bundle ID (numeric)")
|
|
59
|
-
.option("--mission <text>", "Agent mission statement")
|
|
60
|
-
.option("--soul <path>", "Path to soul.json file (skip interactive prompts)")
|
|
61
|
-
.option("--traits <items>", "Comma-separated personality traits")
|
|
62
|
-
.option("--domains <items>", "Comma-separated expertise domains")
|
|
63
|
-
.option("--dry-run", "Prepare only — show what would be deployed without submitting")
|
|
64
|
-
.action(async (name, opts) => {
|
|
65
|
-
const { gatewayUrl, apiKey, privateKey } = loadEnv();
|
|
66
|
-
const wallet = new ethers.Wallet(privateKey);
|
|
67
|
-
const bundleId = parseInt(opts.bundleId, 10);
|
|
68
|
-
if (isNaN(bundleId)) {
|
|
69
|
-
console.error(chalk.red("--bundle-id must be a number."));
|
|
70
|
-
process.exit(1);
|
|
71
|
-
}
|
|
72
|
-
console.log(chalk.bold(`\n Forging agent: ${chalk.cyan(name)}`));
|
|
73
|
-
console.log(chalk.dim(` Wallet: ${wallet.address}`));
|
|
74
|
-
console.log(chalk.dim(` Bundle: #${bundleId}\n`));
|
|
75
|
-
// ── 1. Build or load soul ──
|
|
76
|
-
let soul;
|
|
77
|
-
if (opts.soul) {
|
|
78
|
-
const soulPath = path.resolve(opts.soul);
|
|
79
|
-
if (!fs.existsSync(soulPath)) {
|
|
80
|
-
console.error(chalk.red(`Soul file not found: ${soulPath}`));
|
|
81
|
-
process.exit(1);
|
|
82
|
-
}
|
|
83
|
-
soul = JSON.parse(fs.readFileSync(soulPath, "utf-8"));
|
|
84
|
-
console.log(chalk.dim(` Loaded soul from ${soulPath}`));
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
const mission = opts.mission ?? `Explore and contribute knowledge in the ${name} domain.`;
|
|
88
|
-
soul = buildDefaultSoul(name, mission);
|
|
89
|
-
if (opts.traits) {
|
|
90
|
-
soul.personality.traits = opts.traits.split(",").map((t) => t.trim());
|
|
91
|
-
}
|
|
92
|
-
if (opts.domains) {
|
|
93
|
-
soul.purpose.domains = opts.domains.split(",").map((d) => d.trim());
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
// ── 2. Upload soul to IPFS ──
|
|
97
|
-
const uploadSpinner = ora("Uploading soul to IPFS...").start();
|
|
98
|
-
const uploadResult = await gatewayRequest(gatewayUrl, "POST", "/v1/ipfs/upload", {
|
|
99
|
-
apiKey,
|
|
100
|
-
body: { content: JSON.stringify(soul), filename: "soul.json" },
|
|
101
|
-
});
|
|
102
|
-
if (isGatewayError(uploadResult)) {
|
|
103
|
-
uploadSpinner.fail("Failed to upload soul");
|
|
104
|
-
console.error(chalk.red(` ${uploadResult.error}`));
|
|
105
|
-
process.exit(1);
|
|
106
|
-
}
|
|
107
|
-
const soulCid = uploadResult.data.cid;
|
|
108
|
-
uploadSpinner.succeed(`Soul uploaded: ${chalk.dim(soulCid)}`);
|
|
109
|
-
// ── 3. Prepare deployment ──
|
|
110
|
-
const prepSpinner = ora("Preparing deployment transaction...").start();
|
|
111
|
-
const prepResult = await gatewayRequest(gatewayUrl, "POST", "/v1/prepare/forge", {
|
|
112
|
-
apiKey,
|
|
113
|
-
body: {
|
|
114
|
-
bundleId,
|
|
115
|
-
agentAddress: wallet.address,
|
|
116
|
-
soulCid,
|
|
117
|
-
deploymentFee: "0",
|
|
118
|
-
},
|
|
119
|
-
});
|
|
120
|
-
if (isGatewayError(prepResult)) {
|
|
121
|
-
prepSpinner.fail("Failed to prepare deployment");
|
|
122
|
-
console.error(chalk.red(` ${prepResult.error}`));
|
|
123
|
-
process.exit(1);
|
|
124
|
-
}
|
|
125
|
-
const { forwardRequest, domain, types } = prepResult.data;
|
|
126
|
-
prepSpinner.succeed("Deployment prepared");
|
|
127
|
-
if (opts.dryRun) {
|
|
128
|
-
console.log(chalk.yellow("\n --dry-run: Skipping sign + relay.\n"));
|
|
129
|
-
console.log(chalk.dim(" Forward request:"));
|
|
130
|
-
console.log(chalk.dim(` to: ${forwardRequest.to}`));
|
|
131
|
-
console.log(chalk.dim(` from: ${forwardRequest.from}`));
|
|
132
|
-
console.log(chalk.dim(` gas: ${forwardRequest.gas}`));
|
|
133
|
-
console.log(chalk.dim(` data: ${forwardRequest.data.slice(0, 20)}...`));
|
|
134
|
-
console.log();
|
|
135
|
-
return;
|
|
136
|
-
}
|
|
137
|
-
// ── 4. Sign ──
|
|
138
|
-
const signSpinner = ora("Signing transaction...").start();
|
|
139
|
-
let signature;
|
|
140
|
-
try {
|
|
141
|
-
signature = await wallet.signTypedData(domain, types, forwardRequest);
|
|
142
|
-
signSpinner.succeed("Transaction signed");
|
|
143
|
-
}
|
|
144
|
-
catch (err) {
|
|
145
|
-
signSpinner.fail("Failed to sign");
|
|
146
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
147
|
-
console.error(chalk.red(` ${msg}`));
|
|
148
|
-
process.exit(1);
|
|
149
|
-
}
|
|
150
|
-
// ── 5. Relay ──
|
|
151
|
-
const relaySpinner = ora("Submitting to chain...").start();
|
|
152
|
-
const relayResult = await gatewayRequest(gatewayUrl, "POST", "/v1/relay", {
|
|
153
|
-
apiKey,
|
|
154
|
-
body: { ...forwardRequest, signature },
|
|
155
|
-
});
|
|
156
|
-
if (isGatewayError(relayResult)) {
|
|
157
|
-
relaySpinner.fail("Relay failed");
|
|
158
|
-
console.error(chalk.red(` ${relayResult.error}`));
|
|
159
|
-
process.exit(1);
|
|
160
|
-
}
|
|
161
|
-
relaySpinner.succeed(`Deployed on-chain`);
|
|
162
|
-
// ── 6. Results ──
|
|
163
|
-
console.log(chalk.green(`\n Agent "${name}" forged successfully.\n`));
|
|
164
|
-
console.log(` ${chalk.dim("Transaction:")} ${relayResult.data.txHash}`);
|
|
165
|
-
console.log(` ${chalk.dim("Soul CID:")} ${soulCid}`);
|
|
166
|
-
console.log(` ${chalk.dim("Address:")} ${wallet.address}`);
|
|
167
|
-
console.log(` ${chalk.dim("Bundle:")} #${bundleId}`);
|
|
168
|
-
console.log();
|
|
169
|
-
console.log(chalk.dim(" Next steps:"));
|
|
170
|
-
console.log(chalk.dim(" nookplot online start — bring your agent online"));
|
|
171
|
-
console.log(chalk.dim(" nookplot status — check registration status"));
|
|
172
|
-
console.log();
|
|
173
|
-
// Save deployment info
|
|
174
|
-
const deploymentInfo = {
|
|
175
|
-
name,
|
|
176
|
-
txHash: relayResult.data.txHash,
|
|
177
|
-
soulCid,
|
|
178
|
-
agentAddress: wallet.address,
|
|
179
|
-
bundleId,
|
|
180
|
-
createdAt: new Date().toISOString(),
|
|
181
|
-
};
|
|
182
|
-
const outPath = path.resolve("deployment.json");
|
|
183
|
-
fs.writeFileSync(outPath, JSON.stringify(deploymentInfo, null, 2));
|
|
184
|
-
console.log(chalk.dim(` Saved deployment info to ${outPath}`));
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
//# sourceMappingURL=forge.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forge.js","sourceRoot":"","sources":["../../src/commands/forge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `nookplot swarm` — Multi-agent swarm coordination from the CLI.
|
|
3
|
-
*
|
|
4
|
-
* Subcommands:
|
|
5
|
-
* create — Create a new swarm with subtasks
|
|
6
|
-
* list — List swarms (filterable)
|
|
7
|
-
* show — Show swarm detail + subtask status
|
|
8
|
-
* claim — Claim an open subtask
|
|
9
|
-
* submit — Submit work for a claimed subtask
|
|
10
|
-
*
|
|
11
|
-
* @module commands/swarms
|
|
12
|
-
*/
|
|
13
|
-
import { Command } from "commander";
|
|
14
|
-
export declare function registerSwarmsCommand(program: Command): void;
|
package/dist/commands/swarms.js
DELETED
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `nookplot swarm` — Multi-agent swarm coordination from the CLI.
|
|
3
|
-
*
|
|
4
|
-
* Subcommands:
|
|
5
|
-
* create — Create a new swarm with subtasks
|
|
6
|
-
* list — List swarms (filterable)
|
|
7
|
-
* show — Show swarm detail + subtask status
|
|
8
|
-
* claim — Claim an open subtask
|
|
9
|
-
* submit — Submit work for a claimed subtask
|
|
10
|
-
*
|
|
11
|
-
* @module commands/swarms
|
|
12
|
-
*/
|
|
13
|
-
import chalk from "chalk";
|
|
14
|
-
import ora from "ora";
|
|
15
|
-
import * as fs from "node:fs";
|
|
16
|
-
import * as path from "node:path";
|
|
17
|
-
import { gatewayRequest, isGatewayError } from "../utils/http.js";
|
|
18
|
-
// ---------------------------------------------------------------------------
|
|
19
|
-
// Helpers
|
|
20
|
-
// ---------------------------------------------------------------------------
|
|
21
|
-
function loadEnv() {
|
|
22
|
-
const gatewayUrl = process.env.NOOKPLOT_GATEWAY_URL ?? "https://gateway.nookplot.com";
|
|
23
|
-
const apiKey = process.env.NOOKPLOT_API_KEY ?? "";
|
|
24
|
-
if (!apiKey) {
|
|
25
|
-
console.error(chalk.red("Missing NOOKPLOT_API_KEY. Run `nookplot register` first."));
|
|
26
|
-
process.exit(1);
|
|
27
|
-
}
|
|
28
|
-
return { gatewayUrl, apiKey };
|
|
29
|
-
}
|
|
30
|
-
const STATUS_SYMBOLS = {
|
|
31
|
-
open: chalk.blue("○"),
|
|
32
|
-
claimed: chalk.yellow("◐"),
|
|
33
|
-
submitted: chalk.magenta("◑"),
|
|
34
|
-
accepted: chalk.green("●"),
|
|
35
|
-
rejected: chalk.red("✕"),
|
|
36
|
-
in_progress: chalk.yellow("◐"),
|
|
37
|
-
aggregating: chalk.magenta("◑"),
|
|
38
|
-
completed: chalk.green("●"),
|
|
39
|
-
cancelled: chalk.red("✕"),
|
|
40
|
-
};
|
|
41
|
-
// ---------------------------------------------------------------------------
|
|
42
|
-
// Command
|
|
43
|
-
// ---------------------------------------------------------------------------
|
|
44
|
-
export function registerSwarmsCommand(program) {
|
|
45
|
-
const swarm = program
|
|
46
|
-
.command("swarm")
|
|
47
|
-
.description("Multi-agent swarm coordination");
|
|
48
|
-
// ── create ──
|
|
49
|
-
swarm
|
|
50
|
-
.command("create")
|
|
51
|
-
.description("Create a new swarm with subtasks")
|
|
52
|
-
.requiredOption("--title <text>", "Swarm title")
|
|
53
|
-
.requiredOption("--description <text>", "Swarm description")
|
|
54
|
-
.option("--subtasks <path>", "JSON file with subtask definitions")
|
|
55
|
-
.option("--workspace <id>", "Workspace ID to scope this swarm")
|
|
56
|
-
.action(async (opts) => {
|
|
57
|
-
const { gatewayUrl, apiKey } = loadEnv();
|
|
58
|
-
let subtasks = [];
|
|
59
|
-
if (opts.subtasks) {
|
|
60
|
-
const filePath = path.resolve(opts.subtasks);
|
|
61
|
-
if (!fs.existsSync(filePath)) {
|
|
62
|
-
console.error(chalk.red(`File not found: ${filePath}`));
|
|
63
|
-
process.exit(1);
|
|
64
|
-
}
|
|
65
|
-
subtasks = JSON.parse(fs.readFileSync(filePath, "utf-8"));
|
|
66
|
-
}
|
|
67
|
-
const spinner = ora("Creating swarm...").start();
|
|
68
|
-
const result = await gatewayRequest(gatewayUrl, "POST", "/v1/swarms", {
|
|
69
|
-
apiKey,
|
|
70
|
-
body: {
|
|
71
|
-
title: opts.title,
|
|
72
|
-
description: opts.description,
|
|
73
|
-
subtasks,
|
|
74
|
-
workspaceId: opts.workspace,
|
|
75
|
-
},
|
|
76
|
-
});
|
|
77
|
-
if (isGatewayError(result)) {
|
|
78
|
-
spinner.fail("Failed to create swarm");
|
|
79
|
-
console.error(chalk.red(` ${result.error}`));
|
|
80
|
-
process.exit(1);
|
|
81
|
-
}
|
|
82
|
-
spinner.succeed("Swarm created");
|
|
83
|
-
const s = result.data.swarm;
|
|
84
|
-
console.log(`\n ${chalk.bold(s.title)}`);
|
|
85
|
-
console.log(` ${chalk.dim("ID:")} ${s.id}`);
|
|
86
|
-
console.log(` ${chalk.dim("Tasks:")} ${s.subtask_count}`);
|
|
87
|
-
console.log();
|
|
88
|
-
});
|
|
89
|
-
// ── list ──
|
|
90
|
-
swarm
|
|
91
|
-
.command("list")
|
|
92
|
-
.description("List swarms")
|
|
93
|
-
.option("--status <status>", "Filter by status (open, in_progress, completed, cancelled)")
|
|
94
|
-
.option("--limit <n>", "Max results", "20")
|
|
95
|
-
.action(async (opts) => {
|
|
96
|
-
const { gatewayUrl, apiKey } = loadEnv();
|
|
97
|
-
const params = new URLSearchParams();
|
|
98
|
-
params.set("limit", opts.limit);
|
|
99
|
-
if (opts.status)
|
|
100
|
-
params.set("status", opts.status);
|
|
101
|
-
const spinner = ora("Fetching swarms...").start();
|
|
102
|
-
const result = await gatewayRequest(gatewayUrl, "GET", `/v1/swarms?${params}`, { apiKey });
|
|
103
|
-
if (isGatewayError(result)) {
|
|
104
|
-
spinner.fail("Failed to list swarms");
|
|
105
|
-
console.error(chalk.red(` ${result.error}`));
|
|
106
|
-
process.exit(1);
|
|
107
|
-
}
|
|
108
|
-
spinner.stop();
|
|
109
|
-
const { swarms, total } = result.data;
|
|
110
|
-
if (swarms.length === 0) {
|
|
111
|
-
console.log(chalk.dim(" No swarms found."));
|
|
112
|
-
return;
|
|
113
|
-
}
|
|
114
|
-
console.log(chalk.dim(`\n ${total} swarms total\n`));
|
|
115
|
-
for (const s of swarms) {
|
|
116
|
-
const sym = STATUS_SYMBOLS[s.status] ?? "?";
|
|
117
|
-
const progress = s.subtask_count > 0
|
|
118
|
-
? `${s.completed_count}/${s.subtask_count}`
|
|
119
|
-
: "0 tasks";
|
|
120
|
-
console.log(` ${sym} ${chalk.bold(s.title)} ${chalk.dim(`(${progress})`)} ${chalk.dim(s.id.slice(0, 8))}`);
|
|
121
|
-
}
|
|
122
|
-
console.log();
|
|
123
|
-
});
|
|
124
|
-
// ── show ──
|
|
125
|
-
swarm
|
|
126
|
-
.command("show <id>")
|
|
127
|
-
.description("Show swarm detail with subtask status")
|
|
128
|
-
.action(async (id) => {
|
|
129
|
-
const { gatewayUrl, apiKey } = loadEnv();
|
|
130
|
-
const spinner = ora("Fetching swarm...").start();
|
|
131
|
-
const result = await gatewayRequest(gatewayUrl, "GET", `/v1/swarms/${id}`, { apiKey });
|
|
132
|
-
if (isGatewayError(result)) {
|
|
133
|
-
spinner.fail("Failed to fetch swarm");
|
|
134
|
-
console.error(chalk.red(` ${result.error}`));
|
|
135
|
-
process.exit(1);
|
|
136
|
-
}
|
|
137
|
-
spinner.stop();
|
|
138
|
-
const s = result.data;
|
|
139
|
-
console.log(`\n ${chalk.bold(s.title)}`);
|
|
140
|
-
console.log(` ${chalk.dim(s.description)}`);
|
|
141
|
-
console.log(` ${chalk.dim("Status:")} ${STATUS_SYMBOLS[s.status] ?? s.status} ${s.status}`);
|
|
142
|
-
console.log(` ${chalk.dim("Progress:")} ${s.completed_count}/${s.subtask_count}`);
|
|
143
|
-
console.log();
|
|
144
|
-
if (s.subtasks?.length) {
|
|
145
|
-
console.log(chalk.dim(" Subtasks:"));
|
|
146
|
-
for (const t of s.subtasks) {
|
|
147
|
-
const sym = STATUS_SYMBOLS[t.status] ?? "?";
|
|
148
|
-
const tags = t.skill_tags.length > 0 ? chalk.dim(` [${t.skill_tags.join(", ")}]`) : "";
|
|
149
|
-
const assignee = t.assigned_to ? chalk.dim(` → ${t.assigned_to.slice(0, 10)}...`) : "";
|
|
150
|
-
console.log(` ${sym} ${t.title}${tags}${assignee}`);
|
|
151
|
-
}
|
|
152
|
-
console.log();
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
// ── claim ──
|
|
156
|
-
swarm
|
|
157
|
-
.command("claim <subtaskId>")
|
|
158
|
-
.description("Claim an open subtask")
|
|
159
|
-
.action(async (subtaskId) => {
|
|
160
|
-
const { gatewayUrl, apiKey } = loadEnv();
|
|
161
|
-
const spinner = ora("Claiming subtask...").start();
|
|
162
|
-
const result = await gatewayRequest(gatewayUrl, "POST", `/v1/swarms/subtasks/${subtaskId}/claim`, { apiKey });
|
|
163
|
-
if (isGatewayError(result)) {
|
|
164
|
-
spinner.fail("Failed to claim subtask");
|
|
165
|
-
console.error(chalk.red(` ${result.error}`));
|
|
166
|
-
process.exit(1);
|
|
167
|
-
}
|
|
168
|
-
spinner.succeed("Subtask claimed. Submit your work with `nookplot swarm submit`.");
|
|
169
|
-
});
|
|
170
|
-
// ── submit ──
|
|
171
|
-
swarm
|
|
172
|
-
.command("submit <subtaskId>")
|
|
173
|
-
.description("Submit work for a claimed subtask")
|
|
174
|
-
.requiredOption("--result <json>", "Result as JSON string or path to .json file")
|
|
175
|
-
.action(async (subtaskId, opts) => {
|
|
176
|
-
const { gatewayUrl, apiKey } = loadEnv();
|
|
177
|
-
let resultData;
|
|
178
|
-
if (opts.result.endsWith(".json") && fs.existsSync(path.resolve(opts.result))) {
|
|
179
|
-
resultData = JSON.parse(fs.readFileSync(path.resolve(opts.result), "utf-8"));
|
|
180
|
-
}
|
|
181
|
-
else {
|
|
182
|
-
try {
|
|
183
|
-
resultData = JSON.parse(opts.result);
|
|
184
|
-
}
|
|
185
|
-
catch {
|
|
186
|
-
console.error(chalk.red("--result must be valid JSON or a path to a .json file."));
|
|
187
|
-
process.exit(1);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
const spinner = ora("Submitting work...").start();
|
|
191
|
-
const result = await gatewayRequest(gatewayUrl, "POST", `/v1/swarms/subtasks/${subtaskId}/submit`, {
|
|
192
|
-
apiKey,
|
|
193
|
-
body: { result: resultData },
|
|
194
|
-
});
|
|
195
|
-
if (isGatewayError(result)) {
|
|
196
|
-
spinner.fail("Failed to submit work");
|
|
197
|
-
console.error(chalk.red(` ${result.error}`));
|
|
198
|
-
process.exit(1);
|
|
199
|
-
}
|
|
200
|
-
spinner.succeed("Work submitted for review.");
|
|
201
|
-
});
|
|
202
|
-
}
|
|
203
|
-
//# sourceMappingURL=swarms.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"swarms.js","sourceRoot":"","sources":["../../src/commands/swarms.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AA4BlE,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,SAAS,OAAO;IACd,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,8BAA8B,CAAC;IACtF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC;IAElD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,cAAc,GAA2B;IAC7C,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;IAC1B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;IACxB,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;IAC9B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;IAC/B,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;IAC3B,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;CAC1B,CAAC;AAEF,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,KAAK,GAAG,OAAO;SAClB,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,gCAAgC,CAAC,CAAC;IAEjD,eAAe;IACf,KAAK;SACF,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,kCAAkC,CAAC;SAC/C,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC;SAC/C,cAAc,CAAC,sBAAsB,EAAE,mBAAmB,CAAC;SAC3D,MAAM,CAAC,mBAAmB,EAAE,oCAAoC,CAAC;SACjE,MAAM,CAAC,kBAAkB,EAAE,kCAAkC,CAAC;SAC9D,MAAM,CAAC,KAAK,EAAE,IAKd,EAAE,EAAE;QACH,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;QAEzC,IAAI,QAAQ,GAAwE,EAAE,CAAC;QAEvF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,UAAU,EACV,MAAM,EACN,YAAY,EACZ;YACE,MAAM;YACN,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,QAAQ;gBACR,WAAW,EAAE,IAAI,CAAC,SAAS;aAC5B;SACF,CACF,CAAC;QAEF,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACjC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEL,aAAa;IACb,KAAK;SACF,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,aAAa,CAAC;SAC1B,MAAM,CAAC,mBAAmB,EAAE,4DAA4D,CAAC;SACzF,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,CAAC;SAC1C,MAAM,CAAC,KAAK,EAAE,IAAwC,EAAE,EAAE;QACzD,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;QAEzC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEnD,MAAM,OAAO,GAAG,GAAG,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,UAAU,EACV,KAAK,EACL,cAAc,MAAM,EAAE,EACtB,EAAE,MAAM,EAAE,CACX,CAAC;QAEF,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;QAEtC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,KAAK,iBAAiB,CAAC,CAAC,CAAC;QACtD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YAC5C,MAAM,QAAQ,GAAG,CAAC,CAAC,aAAa,GAAG,CAAC;gBAClC,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,aAAa,EAAE;gBAC3C,CAAC,CAAC,SAAS,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9G,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEL,aAAa;IACb,KAAK;SACF,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,KAAK,EAAE,EAAU,EAAE,EAAE;QAC3B,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;QAEzC,MAAM,OAAO,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,UAAU,EACV,KAAK,EACL,cAAc,EAAE,EAAE,EAClB,EAAE,MAAM,EAAE,CACX,CAAC;QAEF,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;QAEtB,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;YACtC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC3B,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;gBAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvF,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvF,OAAO,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,cAAc;IACd,KAAK;SACF,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,uBAAuB,CAAC;SACpC,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,EAAE;QAClC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;QAEzC,MAAM,OAAO,GAAG,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,UAAU,EACV,MAAM,EACN,uBAAuB,SAAS,QAAQ,EACxC,EAAE,MAAM,EAAE,CACX,CAAC;QAEF,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;IAEL,eAAe;IACf,KAAK;SACF,OAAO,CAAC,oBAAoB,CAAC;SAC7B,WAAW,CAAC,mCAAmC,CAAC;SAChD,cAAc,CAAC,iBAAiB,EAAE,6CAA6C,CAAC;SAChF,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,IAAwB,EAAE,EAAE;QAC5D,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;QAEzC,IAAI,UAAmB,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC9E,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QAC/E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC,CAAC;gBACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,UAAU,EACV,MAAM,EACN,uBAAuB,SAAS,SAAS,EACzC;YACE,MAAM;YACN,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE;SAC7B,CACF,CAAC;QAEF,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACP,CAAC"}
|