@tritard/waterbrother 0.12.4 → 0.12.6

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": "@tritard/waterbrother",
3
- "version": "0.12.4",
3
+ "version": "0.12.6",
4
4
  "description": "Waterbrother: Grok-powered coding CLI with local tools, sessions, operator modes, and approval controls",
5
5
  "type": "module",
6
6
  "bin": {
package/src/product.js CHANGED
@@ -244,8 +244,8 @@ export function buildProductContext(product) {
244
244
 
245
245
  export function detectProductRequest(text) {
246
246
  const lower = text.toLowerCase().trim();
247
- return /^(i want|build me|make me|create|i need|can you build|help me build|let's build|we need)\b/.test(lower)
248
- && /\b(app|site|website|page|platform|tool|dashboard|store|shop|blog|portfolio|saas|api|bot|game)\b/.test(lower);
247
+ return /^(i want|build me|make me|create|i need|can you build|help me build|let's build|let me build|we need|build an?|build the|build my|make an?|make the|make my|create an?|create the|create my)\b/.test(lower)
248
+ && /\b(app|site|website|page|platform|tool|dashboard|store|shop|blog|portfolio|saas|api|bot|game|landing|marketplace|tracker|manager)\b/.test(lower);
249
249
  }
250
250
 
251
251
  export function parseProductIntent(text) {
package/src/tools.js CHANGED
@@ -1348,9 +1348,9 @@ ${clipped}`;
1348
1348
  if (autonomyDecision !== "ask") return { approved: true, note: "" };
1349
1349
  }
1350
1350
  const alwaysAsk = ALWAYS_ASK_TOOLS.has(toolName);
1351
- if (currentApprovalMode === "auto" && !alwaysAsk) {
1352
- const autonomyDecision = approvalByAutonomy(toolName);
1353
- if (autonomyDecision !== "ask") return { approved: true, note: "" };
1351
+ // Auto-approve when either approvalMode or autonomyMode is "auto"
1352
+ if ((currentApprovalMode === "auto" || currentAutonomyMode === "auto") && !alwaysAsk) {
1353
+ return { approved: true, note: "" };
1354
1354
  }
1355
1355
  if (currentApprovalMode === "never") {
1356
1356
  return { approved: false, note: policyDecision.reason || "approval disabled" };