@baryonlabs/cli 0.4.1 → 0.4.2

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baryonlabs/cli",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "description": "Baryon CLI — AI 코딩·학습 에이전트. baryon.ai API에 기본 연결된 pi 코딩 에이전트 래퍼. 한 줄 설치, 상용·로컬 모델 전환.",
5
5
  "type": "module",
6
6
  "bin": {
package/src/commands.js CHANGED
@@ -27,6 +27,7 @@ import {
27
27
  KEY_PREFIX,
28
28
  PI_PACKAGE,
29
29
  PI_SKILLS_DIR,
30
+ PREFERRED_DEFAULT_MODEL,
30
31
  PROVIDER,
31
32
  SKILLS_REPO,
32
33
  SUPPORT_EMAIL,
@@ -92,7 +93,10 @@ export async function setup(args) {
92
93
  warn(t("setup.modelsFailed", { count: models.length }));
93
94
  }
94
95
 
95
- saveConfig({ defaultModel: models[0].id });
96
+ // 두루(baryon-duru)가 카탈로그에 있으면 기본 모델로, 없으면 첫 항목.
97
+ const defaultModel =
98
+ (models.find((m) => m.id === PREFERRED_DEFAULT_MODEL) || models[0]).id;
99
+ saveConfig({ defaultModel });
96
100
  const file = syncPiModels({ baseUrl, models });
97
101
  ok(t("setup.providerConfigured", { provider: c.lime(PROVIDER), file: c.dim(file) }));
98
102
 
package/src/constants.js CHANGED
@@ -58,26 +58,41 @@ export const PI_SKILLS_DIR = path.join(PI_AGENT_DIR, "skills");
58
58
  * Fallback model catalog used when /models discovery is unavailable
59
59
  * (e.g. offline setup). Institutions adjust these to match their plan.
60
60
  * `context` / `max` are conservative defaults; pi tolerates overrides.
61
+ *
62
+ * Baryon 3-tier lineup (기준: baryon-ai-api docs/MODELS.md — 이름은 계약,
63
+ * 실제 업스트림 모델은 게이트웨이 라우팅으로 조절):
64
+ * 그저(geujeo) 단순·빠름 · 두루(duru) 범용 기본 · 그루(guru) 사고·기획.
61
65
  */
62
66
  export const DEFAULT_MODELS = [
63
67
  {
64
- id: "baryon-coder",
65
- name: "Baryon Coder",
66
- reasoning: true,
68
+ id: "baryon-duru",
69
+ name: "두루 (Duru) — 범용",
70
+ reasoning: false,
67
71
  input: ["text", "image"],
68
- contextWindow: 128000,
69
- maxTokens: 16384,
72
+ contextWindow: 200000,
73
+ maxTokens: 8192,
70
74
  },
71
75
  {
72
- id: "baryon-coder-mini",
73
- name: "Baryon Coder Mini",
76
+ id: "baryon-geujeo",
77
+ name: "그저 (Geujeo) — 단순·빠름",
74
78
  reasoning: false,
75
79
  input: ["text"],
76
- contextWindow: 128000,
80
+ contextWindow: 262144,
77
81
  maxTokens: 8192,
78
82
  },
83
+ {
84
+ id: "baryon-guru",
85
+ name: "그루 (Guru) — 사고·기획",
86
+ reasoning: true,
87
+ input: ["text", "image"],
88
+ contextWindow: 200000,
89
+ maxTokens: 16384,
90
+ },
79
91
  ];
80
92
 
93
+ /** Preferred default model when present in a discovered catalog (두루). */
94
+ export const PREFERRED_DEFAULT_MODEL = "baryon-duru";
95
+
81
96
  /**
82
97
  * Extensions installed by default so `baryon` ships with sub-agents, a canvas,
83
98
  * an interactive shell, and web access/search out of the box. Installed via
package/src/index.js CHANGED
@@ -11,9 +11,20 @@ import {
11
11
  syncPiModels,
12
12
  piProviderConfigured,
13
13
  } from "./config.js";
14
- import { DEFAULT_BASE_URL, DEFAULT_MODELS, PROVIDER } from "./constants.js";
14
+ import {
15
+ DEFAULT_BASE_URL,
16
+ DEFAULT_MODELS,
17
+ PREFERRED_DEFAULT_MODEL,
18
+ PROVIDER,
19
+ } from "./constants.js";
15
20
  import { runPi, resolvePiEntry } from "./pi.js";
16
21
 
22
+ /** Default model for a catalog: 두루(baryon-duru) when present, else first. */
23
+ export function pickDefaultModel(models) {
24
+ const preferred = models.find((m) => m.id === PREFERRED_DEFAULT_MODEL);
25
+ return (preferred || models[0]).id;
26
+ }
27
+
17
28
  /**
18
29
  * Configure the baryon provider: persist key/baseUrl, discover (or default)
19
30
  * models, and write pi's models.json. Returns the resolved config + model ids.
@@ -21,9 +32,10 @@ import { runPi, resolvePiEntry } from "./pi.js";
21
32
  export async function configure({ apiKey, baseUrl = DEFAULT_BASE_URL } = {}) {
22
33
  if (apiKey) saveConfig({ apiKey, baseUrl });
23
34
  const models = (apiKey && (await discoverModels(baseUrl, apiKey))) || DEFAULT_MODELS;
24
- saveConfig({ defaultModel: models[0].id });
35
+ const defaultModel = pickDefaultModel(models);
36
+ saveConfig({ defaultModel });
25
37
  syncPiModels({ baseUrl, models });
26
- return { baseUrl, models: models.map((m) => m.id), defaultModel: models[0].id };
38
+ return { baseUrl, models: models.map((m) => m.id), defaultModel };
27
39
  }
28
40
 
29
41
  /** Launch pi with the current baryon config. Resolves to the exit code. */