llm-party-cli 0.2.1 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -75723,6 +75723,15 @@ class Orchestrator {
75723
75723
  getHumanTag() {
75724
75724
  return this.humanTag;
75725
75725
  }
75726
+ clearConversation() {
75727
+ this.conversation.length = 0;
75728
+ this.messageId = 0;
75729
+ for (const agent of this.agents.keys()) {
75730
+ this.lastSeenByAgent.set(agent, 0);
75731
+ }
75732
+ this.sessionId = createSessionId();
75733
+ this.transcriptPath = path9.resolve(".llm-party", "sessions", `transcript-${this.sessionId}.jsonl`);
75734
+ }
75726
75735
  getAdapters() {
75727
75736
  return Array.from(this.agents.values());
75728
75737
  }
@@ -75921,8 +75930,9 @@ function useOrchestrator(orchestrator, maxAutoHops) {
75921
75930
  setMessages((prev) => [...prev, msg]);
75922
75931
  }, []);
75923
75932
  const clearMessages = import_react13.useCallback(() => {
75933
+ orchestrator.clearConversation();
75924
75934
  setMessages([]);
75925
- }, []);
75935
+ }, [orchestrator]);
75926
75936
  return { messages, agentStates, stickyTarget, dispatching, dispatch, addSystemMessage, clearMessages };
75927
75937
  }
75928
75938
  async function dispatchWithHandoffs(orchestrator, initialTargets, maxHops, agentProviders, setMessages, setAgentStates) {
@@ -76490,8 +76500,10 @@ function detectBinary(command) {
76490
76500
  const proc = spawn4(command, ["--version"], {
76491
76501
  stdio: ["ignore", "pipe", "ignore"],
76492
76502
  shell: true,
76493
- timeout: DETECT_TIMEOUT
76503
+ timeout: DETECT_TIMEOUT,
76504
+ detached: true
76494
76505
  });
76506
+ proc.unref();
76495
76507
  let output = "";
76496
76508
  proc.stdout?.on("data", (chunk) => {
76497
76509
  output += chunk.toString();
@@ -76516,8 +76528,10 @@ function detectAlias(command) {
76516
76528
  const timer = setTimeout(() => resolve4({ available: false }), DETECT_TIMEOUT);
76517
76529
  const proc = spawn4(shell, ["-ic", `type ${command}`], {
76518
76530
  stdio: ["ignore", "pipe", "ignore"],
76519
- timeout: DETECT_TIMEOUT
76531
+ timeout: DETECT_TIMEOUT,
76532
+ detached: true
76520
76533
  });
76534
+ proc.unref();
76521
76535
  proc.on("close", (code) => {
76522
76536
  clearTimeout(timer);
76523
76537
  resolve4({ available: code === 0 });
@@ -76798,6 +76812,9 @@ function ConfigWizard({ isFirstRun, onComplete, onCancel, existingConfig }) {
76798
76812
  detectProviders().then((results) => {
76799
76813
  setDetection(results);
76800
76814
  setStep("providers");
76815
+ }).catch(() => {
76816
+ setDetection([]);
76817
+ setStep("providers");
76801
76818
  });
76802
76819
  }, []);
76803
76820
  const existingByProvider = new Map((existingConfig?.agents || []).map((a2) => [a2.provider, a2]));
@@ -76902,6 +76919,9 @@ function ConfigWizard({ isFirstRun, onComplete, onCancel, existingConfig }) {
76902
76919
  }, [selectedIds, existingConfig]);
76903
76920
  useKeyboard((key) => {
76904
76921
  if (step !== "configure") {
76922
+ if (step === "detect") {
76923
+ return;
76924
+ }
76905
76925
  if (step === "done") {
76906
76926
  if (key.name === "enter" || key.name === "return" || key.name === "space") {
76907
76927
  onComplete();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "llm-party-cli",
3
- "version": "0.2.1",
3
+ "version": "0.3.1",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "llm-party": "dist/index.js"
package/prompts/base.md CHANGED
@@ -127,6 +127,7 @@ The project uses a dedicated control folder:
127
127
  - Project memory log: `.llm-party/memory/project.md`
128
128
  - Decisions (ADR-lite): `.llm-party/memory/decisions.md`
129
129
  - Project-local skills: `.llm-party/skills/`
130
+ - Global skills: `~/.llm-party/skills/`
130
131
 
131
132
  ---
132
133
 
@@ -147,11 +148,16 @@ The project uses a dedicated control folder:
147
148
 
148
149
  ---
149
150
 
150
- ## Skills (Project-Local)
151
+ ## Skills
151
152
 
152
- If `.llm-party/skills/` exists, treat it as **project-specific operating instructions** and reusable workflows.
153
+ Skills are markdown files containing specialized instructions, workflows, or domain knowledge. Check these locations in order (later entries override earlier ones for same-named skills):
153
154
 
154
- Only load Skills when needed to perform task or {{humanName}} asks you to work on. This is to avoid loading same skill by every agent.
155
+ 1. `~/.llm-party/skills/` (global, shared across all projects)
156
+ 2. `.llm-party/skills/` (project-local)
157
+ 3. `.claude/skills/` (if present)
158
+ 4. `.agents/skills/` (if present)
159
+
160
+ Only load skills when needed to perform a task or when {{humanName}} asks. Do not preload all skills on boot. This avoids context bloat and prevents every agent from loading the same skill in parallel.
155
161
 
156
162
  ---
157
163