Skip to content
Back to skills

Forge Behavior

ASecurity

Manage dotforge v3 behavior governance — view status, toggle behaviors, adjust strictness. Use when the user asks about active behaviors, wants to disable one for the current session, or adjust escalation thresholds.

  • 666 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 2, 2026
ai-agentspythongobashdebugging

Works with

  • claude code
  • cli

Security analysis

A100/100

Scanned September 2, 2026

npx -y skills add majiayu000/claude-skill-registry --skill forge-behavior --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Forge Behavior?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Forge Behavior
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-forge-behavior/badge)](https://www.skillsdirectory.com/skills/majiayu000-forge-behavior)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: forge-behavior
description: Manage dotforge v3 behavior governance — view status, toggle behaviors, adjust strictness. Use when the user asks about active behaviors, wants to disable one for the current session, or adjust escalation thresholds.
---

# /forge behavior

Thin wrapper around `scripts/forge-behavior/cli.sh`. Dispatches behavior
governance actions. This skill is part of dotforge v3 (Phase 1 of behavior
governance) and should only be used inside dotforge itself or projects that
have adopted v3 — not on v2.9 projects.

## When to use

Invoke this skill when the user asks any of:

- "What behaviors are active?"
- "What's the counter on search-first?"
- "Disable search-first for this session"
- "Turn off the nudge on writes"
- "Make search-first stricter / more relaxed"

Do NOT invoke this skill for v2.9 configuration tasks (use `/forge audit`,
`/forge sync`, etc.) or for behaviors that have not yet been catalogued
(Phase 1 only ships search-first).

## Actions

```bash
scripts/forge-behavior/cli.sh status [--session SESSION_ID]
scripts/forge-behavior/cli.sh on  <behavior_id> [--project | --session SESSION_ID]
scripts/forge-behavior/cli.sh off <behavior_id> [--project | --session SESSION_ID]
scripts/forge-behavior/cli.sh strict  <behavior_id>
scripts/forge-behavior/cli.sh relaxed <behavior_id>
```

**status** — Print the current catalogue (`behaviors/index.yaml`) plus a
per-session summary from `.forge/runtime/state.json`: counters, effective
levels, override counts, pending_block status, and any session-scope
overrides.

**on / off** — Toggle a behavior's active state.
- `--project` (default): mutates `behaviors/index.yaml`. Persistent.
  After changing, recompile the behavior with
  `scripts/compiler/compile.sh behaviors/<id>/behavior.yaml <output_dir>`
  and restart Claude Code so the new hook registration takes effect.
- `--session SESSION_ID`: mutates only
  `.forge/runtime/state.json`'s `behavior_overrides[]` for that session.
  The compiled hook short-circuits silently when disabled. No recompile
  needed. Effect lasts until the session is purged by TTL.

**strict / relaxed** — Mutate `behaviors/<id>/behavior.yaml` escalation:
- `strict`: halves each `after` threshold, minimum 1. Makes violations
  escalate sooner.
- `relaxed`: doubles each `after` threshold. Makes violations escalate
  later.
- Both project-scope only in v1. Session-scope strictness deferred to
  Phase 2 — the runtime would need to pass a strictness multiplier into
  `forge_resolve_level`, which v1 does not support.

## Preconditions

- `jq` must be installed (runtime requirement).
- `python3` with `pyyaml` must be installed (YAML reading/writing).
- The project must already have `behaviors/index.yaml`. If missing,
  create one with `behaviors: []` and populate via `on <id>`.

## Scope matrix

| Action    | --project        | --session              |
|-----------|------------------|------------------------|
| status    | always shown     | filters to one session |
| on / off  | mutates index.yaml | writes to state.json   |
| strict    | mutates yaml     | (not implemented v1)   |
| relaxed   | mutates yaml     | (not implemented v1)   |

## Example flows

**Check what is active right now:**
```
/forge behavior status
```

**Silence search-first for a noisy debugging session:**
```
/forge behavior off search-first --session <session_id>
```

**Tighten up for strict development mode:**
```
/forge behavior strict search-first
# then recompile and restart
```

## Notes

- The CLI honors `FORGE_BEHAVIORS_DIR` as an override of `behaviors/`
  location — useful for tests and isolated environments.
- Direct tool result for tests: `scripts/forge-behavior/tests/run_all.sh`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.