thoth-agents 0.3.4 → 0.3.5

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.
@@ -9,7 +9,7 @@
9
9
  {
10
10
  "name": "thoth-agents",
11
11
  "description": "Adaptive root orchestration, six specialist subagents, and a runtime-autonomous Spec Kit-compatible SDD bundle.",
12
- "version": "0.3.4",
12
+ "version": "0.3.5",
13
13
  "author": {
14
14
  "name": "thoth-agents maintainers"
15
15
  },
package/README.md CHANGED
@@ -389,6 +389,10 @@ npx thoth-agents@latest install --agent=claude
389
389
  npx thoth-agents@latest model --harness=codex --role=deep --model=gpt-5.6-sol
390
390
  ```
391
391
 
392
+ In the interactive `Configure models` flow, `Apply` is always available. When
393
+ no role is dirty, it reapplies every currently displayed role value; after an
394
+ edit, preview and apply remain limited to the dirty roles.
395
+
392
396
  It does not bypass native marketplace trust or edit manager-owned caches
393
397
  directly; Codex and Claude own their native manager mutations.
394
398
 
@@ -765,10 +765,10 @@ function normalizeSelection(current, items) {
765
765
  if (items.length === 0) return 0;
766
766
  return Math.min(current, items.length - 1);
767
767
  }
768
- function changedRoles(rows) {
769
- return rows.filter((role) => role.dirty).map((role) => {
768
+ function rolesForModelPlan(rows, includeUnchanged = false) {
769
+ return rows.filter((role) => includeUnchanged || role.dirty).map((role) => {
770
770
  const effortChanged = role.effort?.kind !== role.currentEffort.kind || role.effort?.kind === "effort" && role.currentEffort.kind === "effort" && role.effort.value !== role.currentEffort.value;
771
- const includeEffort = effortChanged || role.effort?.kind === "effort";
771
+ const includeEffort = includeUnchanged || effortChanged || role.effort?.kind === "effort";
772
772
  return {
773
773
  role: role.role,
774
774
  model: role.model,
@@ -899,8 +899,9 @@ function App({
899
899
  (option) => option.id === modelChoiceSelection.id
900
900
  );
901
901
  const choiceSelected = selectedModelIndex < 0 ? 0 : selectedModelIndex;
902
- const dirtyRoles = changedRoles(modelRows);
903
- const modelActions = dirtyRoles.length > 0 ? ["Preview changes", "Apply changes", "Back"] : ["Back"];
902
+ const dirtyRoles = rolesForModelPlan(modelRows);
903
+ const rolesToApply = dirtyRoles.length > 0 ? dirtyRoles : rolesForModelPlan(modelRows, true);
904
+ const modelActions = dirtyRoles.length > 0 ? ["Preview changes", "Apply", "Back"] : ["Apply", "Back"];
904
905
  const modelMenuItems = [
905
906
  ...modelRows.map((role) => ({
906
907
  id: role.role,
@@ -989,7 +990,7 @@ function App({
989
990
  setView("effortChoice");
990
991
  }
991
992
  function previewModelChanges(applyImmediately) {
992
- const nextPlan = operations.modelPlan(modelHarness, dirtyRoles);
993
+ const nextPlan = operations.modelPlan(modelHarness, rolesToApply);
993
994
  setPlan(nextPlan);
994
995
  setPreviewAction(applyImmediately ? "apply" : "cancel");
995
996
  setPreviewBackView("modelRoles");
@@ -1237,7 +1238,7 @@ function App({
1237
1238
  const action = modelActions[modelSelected - modelRows.length];
1238
1239
  if (action === "Back") setView("manageHarness");
1239
1240
  if (action === "Preview changes") previewModelChanges(false);
1240
- if (action === "Apply changes") previewModelChanges(true);
1241
+ if (action === "Apply") previewModelChanges(true);
1241
1242
  }
1242
1243
  return;
1243
1244
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thoth-agents",
3
- "version": "0.3.4",
3
+ "version": "0.3.5",
4
4
  "description": "Adaptive multi-harness orchestration with seven roles, runtime-autonomous Spec Kit-compatible SDD routes, and external provider boundaries.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thoth-agents",
3
- "version": "0.3.4",
3
+ "version": "0.3.5",
4
4
  "description": "Adaptive multi-harness agent pack with seven roles and a runtime-autonomous Spec Kit-compatible SDD bundle for Claude Code.",
5
5
  "author": {
6
6
  "name": "thoth-agents"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thoth-agents",
3
- "version": "0.3.4",
3
+ "version": "0.3.5",
4
4
  "description": "Bundled Spec Kit-compatible SDD skills and MCP configuration; the seven-role global Codex layer requires thoth-agents CLI setup.",
5
5
  "skills": "./skills/",
6
6
  "mcpServers": "./codex.mcp.json"