@shomra/agent 0.2.8 → 0.2.9

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/shomra.mjs +7 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shomra/agent",
3
- "version": "0.2.8",
3
+ "version": "0.2.9",
4
4
  "description": "Shomra — a local-first security scanner and runtime firewall for AI agents, MCP servers, prompts, and models. Gates AI artifacts in your editor and CI.",
5
5
  "type": "module",
6
6
  "bin": {
package/shomra.mjs CHANGED
@@ -3052,6 +3052,13 @@ async function cmdToolGuard(flags) {
3052
3052
  process.exit(0); // fail-open (Tier 0 already screened the dangerous patterns)
3053
3053
  }
3054
3054
 
3055
+ if (res && res.hold) {
3056
+ // Human-in-the-loop: the call was BLOCKed but diverted to approval. Don't
3057
+ // hard-deny — ask, so the developer can wait for a reviewer to approve in
3058
+ // Slack/Teams and then retry (an approval opens a short grant window that
3059
+ // lets the identical call through).
3060
+ emitGuardAsk(agent, res.reason || 'Held for approval by Shomra — waiting on a reviewer. Retry once it’s approved.');
3061
+ }
3055
3062
  if (res && res.decision === 'BLOCK') {
3056
3063
  emitGuardDeny(agent, res.reason || 'Blocked by Shomra security policy.');
3057
3064
  }