scream-code 0.16.9 → 0.17.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/README.md +3 -1
- package/dist/{app-BJSym649.mjs → app-BZ9l7yHr.mjs} +10 -10
- package/dist/{dispatch-ChbwC2I5.mjs → dispatch-D1mzriks.mjs} +1 -1
- package/dist/{dispatch-CIOuINvn.mjs → dispatch-D6lDoihb.mjs} +1157 -313
- package/dist/main.mjs +1 -1
- package/dist/{markit-DG5XsAGz.mjs → markit-Dga2W6G6.mjs} +9 -9
- package/dist/public/assets/{index-DMGV8LA-.js → index-CKa_o5qA.js} +2 -2
- package/dist/public/assets/{index-DMGV8LA-.js.map → index-CKa_o5qA.js.map} +1 -1
- package/dist/public/assets/{index-DdPmkwIL.css → index-CVXe8l3P.css} +1 -1
- package/dist/public/index.html +2 -2
- package/dist/{text-input-dialog-DBgQwxaO.mjs → text-input-dialog-1U8EOVtc.mjs} +1 -1
- package/dist/{text-input-dialog-XT3cOEjD.mjs → text-input-dialog-CNY1NVhy.mjs} +46 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -42,7 +42,7 @@ scream --auto # auto permission mode
|
|
|
42
42
|
scream -y # auto-approve mode
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
On first launch Scream walks you through model setup (`/config`). 130+ providers built in — or point it at any OpenAI-compatible endpoint with `/config diy`. Switch models anytime with `/model`, no restart needed — or use `/model diy` to give each sub-agent its own model, letting every model do what it does best.
|
|
45
|
+
On first launch Scream walks you through model setup (`/config`). 130+ providers built in — or point it at any OpenAI-compatible endpoint with `/config diy`. Switch models anytime with `/model`, no restart needed — or use `/model diy` to give each sub-agent its own model, letting every model do what it does best. Generate or edit images the same way: run `/config image` once, then just ask for a picture (the `/image` skill).
|
|
46
46
|
|
|
47
47
|
When Scream wants to modify files or run commands, an approval panel pops up — pick a number, press Enter.
|
|
48
48
|
|
|
@@ -102,6 +102,7 @@ Type `/` in the input to browse. All 54 commands:
|
|
|
102
102
|
| **Models & configuration** | |
|
|
103
103
|
| `/model [alias]` | Switch LLM model |
|
|
104
104
|
| `/config` | Browse and configure models |
|
|
105
|
+
| `/config image` | Configure image generation (provider, URL, key, model) |
|
|
105
106
|
| `/logout` (`/disconnect`) | Remove configured models |
|
|
106
107
|
| `/language` (`/lang`) | Switch interface language |
|
|
107
108
|
| `/theme` | Set terminal UI theme |
|
|
@@ -116,6 +117,7 @@ Type `/` in the input to browse. All 54 commands:
|
|
|
116
117
|
| `/plugin` (`/skills`, `/plugin`) | Skill center |
|
|
117
118
|
| `/extension` | Code extensions: activate or deactivate a plugin entry point |
|
|
118
119
|
| `/make-skill` | Distill the session into a Skill |
|
|
120
|
+
| `/image` | Draw or edit an image (image skill; set up once with `/config image`) |
|
|
119
121
|
| `/cc` | Control your cc daemon |
|
|
120
122
|
| `/cc-connect` | cc-connect quick channel setup |
|
|
121
123
|
| **Tools** | |
|
|
@@ -5,8 +5,8 @@ const __filename = __cjsShimFileURLToPath(import.meta.url);
|
|
|
5
5
|
const __dirname = __cjsShimDirname(__filename);
|
|
6
6
|
import "./suppress-sqlite-warning-C2VB0doZ.mjs";
|
|
7
7
|
import { k as MemoryMemoStore } from "./src-BhZujafw.mjs";
|
|
8
|
-
import { $n as encodeWorkDirKey, $t as lerpGradient, A as highlightLines, An as embeddingFailureDetail, At as isTurnElapsedEnabled, B as ActivityGroupComponent, Bn as detectShellEnvironment, Bt as ENABLE_TERMINAL_THEME_REPORTING, Cn as getLlmNotSetMessage, Ct as clearInfoPanelState, D as ToolCallComponent, Dn as sortSlashCommands, Dt as createEditorTheme, E as UserMessageComponent, En as BUILTIN_SLASH_COMMANDS, Et as resolveThemeSync, F as StatusMessageComponent, Fn as PULSE_WAVE_FRAMES, Ft as detectTerminalTheme, G as AgentGroupComponent, Gn as CLI_COMMAND_NAME, Gt as QUERY_TERMINAL_THEME, H as estimateTokens, Hn as getInputHistoryFile, Ht as OSC11_RESPONSE, I as replaceTabs, In as TuiConfigParseError, It as parseOsc11BackgroundTheme, J as getBreathingFrame, Jn as PRODUCT_NAME, Jt as TERMINAL_THEME_DARK, K as WelcomeComponent, Kn as CLI_UI_MODE, Kt as TERMINAL_FOCUS_IN, L as sanitizeShellOutput, Ln as TuiLikePreferencesSchema, Lt as DISABLE_TERMINAL_FOCUS_REPORTING, M as CachedContainer, Mn as hasEmbeddingModelCache, Mt as createThemeStyles, N as ThinkingComponent, Nn as startManualEmbeddingDownload, Nt as contrastTextHex, O as renderDiffLines, On as isExperimentalFlagEnabled, Ot as createMarkdownTheme, P as NoticeMessageComponent, Pn as PIXEL_PULSE_FRAMES, Pt as getColorPalette, Q as refineGoal, Qn as ScreamHarness, Qt as FooterComponent, R as SkillActivationComponent, Rn as loadTuiConfig, Rt as DISABLE_TERMINAL_THEME_REPORTING, S as readJsonlFile, Sn as getCtrlDHint, St as supportsBalance, Tn as buildSkillSlashCommands, U as getSharedSpeedTracker, Un as getLogDir, Ut as OSC11_RESPONSE_PREFIX, V as charsForTokenBudget, Vn as getDataDir, Vt as OSC11_QUERY, W as BackgroundAgentStatusComponent, Wn as detectInstallSource, Wt as OSC11_RESPONSE_PREFIX_NO_ESC, X as CompactionComponent, Xn as fetchCatalog, Xt as isBusy, Y as resetBreathingClock, Yn as DEFAULT_CATALOG_URL, Yt as TERMINAL_THEME_LIGHT, Z as clearGoalState, Zn as saveCatalogCache, Zt as isStreaming, _n as EXIT_CONFIRM_WINDOW_MS, a as syncDiagramCapabilityPrompt, an as printableChar, ar as isRealUserPrompt, at as toTerminalHyperlink, b as readUpdateCache, bn as TIP_ROTATION_INTERVAL_MS, c as disposeChildren, cn as appendStreamingArgsPreview, cr as log, d as isPlanExpandable, dn as isTodoItemShape, dr as isOrphanedToolCallError, en as SubagentSlots, er as normalizeWorkDir, f as MoonLoader, fn as parseStreamingArgs, fr as ErrorCodes, ft as handleFusionPlanCommand, gn as EMPTY_SESSION_HINT_URL, hn as truncateErrorMessage, i as buildRoleAdditionalText, it as isInternalMessage, j as langFromPath, jn as getKnowledgeStore, jt as toggleEmptySessionHint, k as renderDiffLinesClustered, kn as setExperimentalFlags, kt as isEmptySessionHintDismissed, l as hasDispose, ln as argsRecord, lr as resolveGlobalLogPath, mn as stringValue, mt as handlePlanCommand, n as clearEvalPanelState, nr as readSessionIndex, on as STATUS_BULLET, or as resolveScreamHome, ot as changeThinkingLevel, p as formatMemoryMemoForInjection, pn as serializeToolResultOutput, pr as SCREAM_ERROR_INFO, q as BREATHE_CYCLE_MS, qn as CLI_USER_AGENT_PRODUCT, qt as TERMINAL_FOCUS_OUT, r as openUrl, rr as removeSessionIndexEntry, sn as appendSessionHeaderHint, sr as flushDiagnosticLogs, st as getModelCycleLevel, t as dispatchInput, tr as appendSessionIndexEntry, u as isExpandable, un as formatErrorMessage, ur as isScreamError, v as selectUpdateTarget, vn as MAIN_AGENT_ID, w as getDaemonInstructions, wn as getNoActiveSessionMessage, x as appendJsonlLine, xn as getCtrlCHint, xt as refreshProviderBalance, y as refreshUpdateCache, yn as SESSION_TIPS, z as AssistantMessageComponent, zn as saveTuiConfig, zt as ENABLE_TERMINAL_FOCUS_REPORTING } from "./dispatch-
|
|
9
|
-
import { a as setLocale, i as getLocale, o as t } from "./text-input-dialog-
|
|
8
|
+
import { $n as encodeWorkDirKey, $t as lerpGradient, A as highlightLines, An as embeddingFailureDetail, At as isTurnElapsedEnabled, B as ActivityGroupComponent, Bn as detectShellEnvironment, Bt as ENABLE_TERMINAL_THEME_REPORTING, Cn as getLlmNotSetMessage, Ct as clearInfoPanelState, D as ToolCallComponent, Dn as sortSlashCommands, Dt as createEditorTheme, E as UserMessageComponent, En as BUILTIN_SLASH_COMMANDS, Et as resolveThemeSync, F as StatusMessageComponent, Fn as PULSE_WAVE_FRAMES, Ft as detectTerminalTheme, G as AgentGroupComponent, Gn as CLI_COMMAND_NAME, Gt as QUERY_TERMINAL_THEME, H as estimateTokens, Hn as getInputHistoryFile, Ht as OSC11_RESPONSE, I as replaceTabs, In as TuiConfigParseError, It as parseOsc11BackgroundTheme, J as getBreathingFrame, Jn as PRODUCT_NAME, Jt as TERMINAL_THEME_DARK, K as WelcomeComponent, Kn as CLI_UI_MODE, Kt as TERMINAL_FOCUS_IN, L as sanitizeShellOutput, Ln as TuiLikePreferencesSchema, Lt as DISABLE_TERMINAL_FOCUS_REPORTING, M as CachedContainer, Mn as hasEmbeddingModelCache, Mt as createThemeStyles, N as ThinkingComponent, Nn as startManualEmbeddingDownload, Nt as contrastTextHex, O as renderDiffLines, On as isExperimentalFlagEnabled, Ot as createMarkdownTheme, P as NoticeMessageComponent, Pn as PIXEL_PULSE_FRAMES, Pt as getColorPalette, Q as refineGoal, Qn as ScreamHarness, Qt as FooterComponent, R as SkillActivationComponent, Rn as loadTuiConfig, Rt as DISABLE_TERMINAL_THEME_REPORTING, S as readJsonlFile, Sn as getCtrlDHint, St as supportsBalance, Tn as buildSkillSlashCommands, U as getSharedSpeedTracker, Un as getLogDir, Ut as OSC11_RESPONSE_PREFIX, V as charsForTokenBudget, Vn as getDataDir, Vt as OSC11_QUERY, W as BackgroundAgentStatusComponent, Wn as detectInstallSource, Wt as OSC11_RESPONSE_PREFIX_NO_ESC, X as CompactionComponent, Xn as fetchCatalog, Xt as isBusy, Y as resetBreathingClock, Yn as DEFAULT_CATALOG_URL, Yt as TERMINAL_THEME_LIGHT, Z as clearGoalState, Zn as saveCatalogCache, Zt as isStreaming, _n as EXIT_CONFIRM_WINDOW_MS, a as syncDiagramCapabilityPrompt, an as printableChar, ar as isRealUserPrompt, at as toTerminalHyperlink, b as readUpdateCache, bn as TIP_ROTATION_INTERVAL_MS, c as disposeChildren, cn as appendStreamingArgsPreview, cr as log, d as isPlanExpandable, dn as isTodoItemShape, dr as isOrphanedToolCallError, en as SubagentSlots, er as normalizeWorkDir, f as MoonLoader, fn as parseStreamingArgs, fr as ErrorCodes, ft as handleFusionPlanCommand, gn as EMPTY_SESSION_HINT_URL, hn as truncateErrorMessage, i as buildRoleAdditionalText, it as isInternalMessage, j as langFromPath, jn as getKnowledgeStore, jt as toggleEmptySessionHint, k as renderDiffLinesClustered, kn as setExperimentalFlags, kt as isEmptySessionHintDismissed, l as hasDispose, ln as argsRecord, lr as resolveGlobalLogPath, mn as stringValue, mt as handlePlanCommand, n as clearEvalPanelState, nr as readSessionIndex, on as STATUS_BULLET, or as resolveScreamHome, ot as changeThinkingLevel, p as formatMemoryMemoForInjection, pn as serializeToolResultOutput, pr as SCREAM_ERROR_INFO, q as BREATHE_CYCLE_MS, qn as CLI_USER_AGENT_PRODUCT, qt as TERMINAL_FOCUS_OUT, r as openUrl, rr as removeSessionIndexEntry, sn as appendSessionHeaderHint, sr as flushDiagnosticLogs, st as getModelCycleLevel, t as dispatchInput, tr as appendSessionIndexEntry, u as isExpandable, un as formatErrorMessage, ur as isScreamError, v as selectUpdateTarget, vn as MAIN_AGENT_ID, w as getDaemonInstructions, wn as getNoActiveSessionMessage, x as appendJsonlLine, xn as getCtrlCHint, xt as refreshProviderBalance, y as refreshUpdateCache, yn as SESSION_TIPS, z as AssistantMessageComponent, zn as saveTuiConfig, zt as ENABLE_TERMINAL_FOCUS_REPORTING } from "./dispatch-D6lDoihb.mjs";
|
|
9
|
+
import { a as setLocale, i as getLocale, o as t } from "./text-input-dialog-CNY1NVhy.mjs";
|
|
10
10
|
import { createRequire } from "node:module";
|
|
11
11
|
import { randomBytes, randomUUID, scryptSync, timingSafeEqual } from "node:crypto";
|
|
12
12
|
import { access, appendFile, chmod, mkdir, mkdtemp, readFile, readdir, realpath, rename, rm, stat, unlink, writeFile } from "node:fs/promises";
|
|
@@ -33,7 +33,7 @@ function optionalBuildString(value) {
|
|
|
33
33
|
return typeof value === "string" && value.length > 0 ? value : void 0;
|
|
34
34
|
}
|
|
35
35
|
const SCREAM_BUILD_INFO = {
|
|
36
|
-
version: optionalBuildString("0.
|
|
36
|
+
version: optionalBuildString("0.17.1"),
|
|
37
37
|
channel: optionalBuildString(""),
|
|
38
38
|
commit: optionalBuildString(""),
|
|
39
39
|
buildTarget: optionalBuildString("darwin-arm64")
|
|
@@ -6267,8 +6267,8 @@ function cronDetail(data) {
|
|
|
6267
6267
|
* Scope is per-`ScreamTUI` instance. Reloads (`/new`, `/clear`,
|
|
6268
6268
|
* session switch) call `clear()` so ids restart from 1 and stale
|
|
6269
6269
|
* prompt attachments are dropped. We intentionally do NOT persist
|
|
6270
|
-
* attachments across sessions
|
|
6271
|
-
*
|
|
6270
|
+
* attachments across sessions, and `--resume` wouldn't know how to
|
|
6271
|
+
* materialize the files anyway.
|
|
6272
6272
|
*/
|
|
6273
6273
|
/** Temp-file basename prefix used by path-mode image materialization. */
|
|
6274
6274
|
const TEMP_ATTACHMENT_PREFIX = "scream-attachment-";
|
|
@@ -9963,9 +9963,9 @@ function normalizePastedImagePath(path) {
|
|
|
9963
9963
|
* space/quote separated, all with image extensions), return them. Returns
|
|
9964
9964
|
* `undefined` when the paste is mixed text + paths or contains non-image
|
|
9965
9965
|
* content — in that case the caller should fall through to normal text
|
|
9966
|
-
* paste.
|
|
9967
|
-
*
|
|
9968
|
-
*
|
|
9966
|
+
* paste. Handled at the paste layer so a Finder-copied image becomes a
|
|
9967
|
+
* multimodal image attachment instead of a text path the agent would have
|
|
9968
|
+
* to Read manually.
|
|
9969
9969
|
*/
|
|
9970
9970
|
function extractBracketedImagePastePaths(data) {
|
|
9971
9971
|
if (!data.includes(BRACKET_PASTE_START)) return void 0;
|
|
@@ -11220,7 +11220,7 @@ var SessionManager$1 = class {
|
|
|
11220
11220
|
const summaries = await this.host.harness.listSessions({ workDir });
|
|
11221
11221
|
for (const summary of summaries) {
|
|
11222
11222
|
if (summary.id === currentSessionId) continue;
|
|
11223
|
-
if (isPrunableEmptySession(summary, now)) await this.host.harness.deleteSession(summary.id);
|
|
11223
|
+
if (isPrunableEmptySession(summary, now)) await this.host.harness.deleteSession(summary.id).catch(() => {});
|
|
11224
11224
|
}
|
|
11225
11225
|
} catch (error) {
|
|
11226
11226
|
this.host.showStatus(`Session cleanup skipped: ${String(error)}`);
|
|
@@ -14137,7 +14137,7 @@ var ScreamTUI = class {
|
|
|
14137
14137
|
const card = new OnboardingCardComponent({
|
|
14138
14138
|
colors: this.state.theme.colors,
|
|
14139
14139
|
onConfigure: () => {
|
|
14140
|
-
import("./dispatch-
|
|
14140
|
+
import("./dispatch-D1mzriks.mjs").then(({ handleConnectCommand }) => handleConnectCommand(this, "")).finally(() => {
|
|
14141
14141
|
this.restoreEditor();
|
|
14142
14142
|
onDone?.();
|
|
14143
14143
|
});
|
|
@@ -3,5 +3,5 @@ import { fileURLToPath as __cjsShimFileURLToPath } from 'node:url';
|
|
|
3
3
|
import { dirname as __cjsShimDirname } from 'node:path';
|
|
4
4
|
const __filename = __cjsShimFileURLToPath(import.meta.url);
|
|
5
5
|
const __dirname = __cjsShimDirname(__filename);
|
|
6
|
-
import { rn as handleConnectCommand } from "./dispatch-
|
|
6
|
+
import { rn as handleConnectCommand } from "./dispatch-D6lDoihb.mjs";
|
|
7
7
|
export { handleConnectCommand };
|