@sideboard-ai/core 0.1.238 → 0.1.240

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.
@@ -1179,12 +1179,14 @@ function skillCommandFromInput(input) {
1179
1179
  }
1180
1180
  return void 0;
1181
1181
  }
1182
+ function looksLikeComposerSkillExpansion(text) {
1183
+ const t = text.trim();
1184
+ return /^## Skill: \//m.test(t) && /Follow this skill for the request above:/i.test(t);
1185
+ }
1182
1186
  function looksLikeSkillBody(text) {
1183
1187
  const t = text.trim();
1184
1188
  if (!t) return false;
1185
- if (/^## Skill: \//m.test(t) && /Follow this skill for the request above:/i.test(t)) {
1186
- return true;
1187
- }
1189
+ if (looksLikeComposerSkillExpansion(t)) return true;
1188
1190
  return skillNameFromFrontmatter(t) != null;
1189
1191
  }
1190
1192
  function skillNameFromFrontmatter(text) {
@@ -1205,11 +1207,13 @@ function isCompactToolName(name) {
1205
1207
  short
1206
1208
  );
1207
1209
  }
1208
- function isContextCompactInProgress(text) {
1209
- return /^Compressing context/i.test(text.trim());
1210
- }
1211
1210
  function isContextCompactDone(text) {
1212
- return /^Context compressed\b/i.test(text.trim());
1211
+ return /\bContext compressed\b/i.test(text.trim());
1212
+ }
1213
+ function isContextCompactInProgress(text) {
1214
+ const t = text.trim();
1215
+ if (isContextCompactDone(t)) return false;
1216
+ return /^Compressing context/i.test(t);
1213
1217
  }
1214
1218
  function looksLikeConversationSummary(text) {
1215
1219
  const t = text.trim();
@@ -1719,7 +1723,7 @@ function applyAgentEvent(parts, event) {
1719
1723
  );
1720
1724
  }
1721
1725
  const acc = next[next.length - 1];
1722
- if (acc?.type === "text" && looksLikeSkillBody(acc.text)) {
1726
+ if (acc?.type === "text" && looksLikeComposerSkillExpansion(acc.text)) {
1723
1727
  next[next.length - 1] = skillToolFromTextPart(acc, `skill-${next.length}`);
1724
1728
  } else if (acc?.type === "text" && looksLikeConversationSummary(acc.text)) {
1725
1729
  next[next.length - 1] = compactToolPart(acc.text, `compact-${next.length}`, {
@@ -2326,7 +2330,8 @@ function eventsFromClaudeSystem(obj) {
2326
2330
  const trigger = meta.trigger ? ` (${meta.trigger})` : "";
2327
2331
  const thinking = {
2328
2332
  type: "thinking",
2329
- data: `Context compressed${trigger}`
2333
+ data: `Context compressed${trigger}`,
2334
+ replace: true
2330
2335
  };
2331
2336
  if (meta.postTokens != null && meta.postTokens > 0) {
2332
2337
  return [
@@ -4394,12 +4399,13 @@ export {
4394
4399
  visibleToolRowDetail,
4395
4400
  isSkillToolName,
4396
4401
  skillCommandFromInput,
4402
+ looksLikeComposerSkillExpansion,
4397
4403
  looksLikeSkillBody,
4398
4404
  skillNameFromFrontmatter,
4399
4405
  skillCommandFromBody,
4400
4406
  isCompactToolName,
4401
- isContextCompactInProgress,
4402
4407
  isContextCompactDone,
4408
+ isContextCompactInProgress,
4403
4409
  looksLikeConversationSummary,
4404
4410
  toolDetail,
4405
4411
  toolDescription,