shiva-bhaga
About
The shiva-bhaga skill enables controlled context purging and dead-code elimination, identifying stale patterns and failed approaches to discard. It's designed for clearing accumulated assumptions, zombie tasks, or noise before a major pivot. Use it to intentionally dissolve outdated attachments and create space for new solutions.
Quick Install
Claude Code
Recommendednpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/shiva-bhagaCopy and paste this command in Claude Code to install this skill
Documentation
Shiva Bhaga
Controlled destruction and dissolution of stale patterns, outdated assumptions, and accumulated noise — clearing the ground so new growth can emerge.
When to Use
- Context has accumulated stale assumptions that are silently distorting reasoning
- A previous approach has failed and the temptation is to patch rather than discard
- The conversation has grown long and earlier decisions may no longer serve the current goal
- Dead code, abandoned plans, or zombie tasks are creating noise and confusion
- Before a major pivot — clearing must precede creation
- When attachment to a particular approach is preventing consideration of alternatives
Inputs
- Required: Current conversation state or project context (available implicitly)
- Optional: Specific target for dissolution (e.g., "this approach isn't working," "clear all assumptions about the database layer")
- Optional: Scope boundary — what must be preserved through the destruction
Procedure
Step 1: Identify What Must End
Survey the current state and mark what is stale, broken, or no longer serving the goal.
Dissolution Triage:
+---------------------+---------------------------+------------------------+
| Category | Symptoms | Action |
+---------------------+---------------------------+------------------------+
| Stale Assumptions | Decisions made early that | List and re-evaluate |
| | no longer match current | each against current |
| | understanding | reality |
+---------------------+---------------------------+------------------------+
| Failed Approaches | Approaches attempted and | Acknowledge failure |
| | abandoned but still | explicitly; release |
| | influencing thinking | the sunk cost |
+---------------------+---------------------------+------------------------+
| Accumulated Noise | Context, variables, or | Identify and mark for |
| | plans that are no longer | removal |
| | referenced or relevant | |
+---------------------+---------------------------+------------------------+
| Attachment Points | "We already decided..." | Question whether the |
| | beliefs that resist | decision still holds |
| | re-examination | |
+---------------------+---------------------------+------------------------+
| Zombie Artifacts | Code, tasks, or plans | Delete or archive; |
| | that exist but serve no | do not leave in limbo |
| | current purpose | |
+---------------------+---------------------------+------------------------+
- Scan each category honestly — resistance to examining a category is itself a signal
- For each item found, ask: "If I were starting fresh right now, would I create this?"
- If the answer is no, mark it for dissolution
Got: A clear inventory of what needs to be released, with specific items in each category.
If fail: If nothing seems stale, the assessment may be too shallow. Pick the oldest decision in the current context and justify it from scratch — if the justification feels forced, it is a candidate for dissolution.
Step 2: Establish the Preservation Boundary
Not everything should be destroyed. Identify what must survive the clearing.
- Core requirements: What did the user actually ask for? This survives.
- Verified knowledge: Facts confirmed through tool use (file reads, test results) survive.
- User preferences: Explicitly stated preferences and constraints survive.
- Working components: Code or approaches that are demonstrably functioning survive.
Draw the boundary: everything inside is preserved, everything outside is subject to dissolution.
Got: A clear distinction between what is kept and what is released.
If fail: If the boundary is unclear, ask: "What would I need to reconstruct if I started this task from scratch?" The answer defines the preservation boundary.
Step 3: Dissolve with Intention
Execute the dissolution — not as abandonment but as intentional clearing.
- For each marked item, release it explicitly:
- Stale assumption: "I assumed X, but current evidence shows Y. Releasing X."
- Failed approach: "Approach A was attempted and did not work because Z. Releasing attachment to A."
- Noise: "Variable/plan/context Q is no longer relevant. Removing from consideration."
- Do not justify or defend what is being dissolved — the point is release, not analysis
- If dissolving a large body of accumulated context, summarize what was dissolved and why in one sentence
- Clear the workspace: if applicable, close abandoned files, reset mental model, acknowledge the clean slate
Got: A lighter, cleaner context with stale elements removed. The remaining context should feel accurate and current.
If fail: If dissolution feels incomplete — some released items keep influencing thinking — name them again explicitly. "I notice I am still reasoning as if X is true. X was dissolved. Proceeding without X."
Step 4: Sit in the Void
After destruction, resist the urge to immediately rebuild. The space between destruction and creation has value.
- Acknowledge the cleared space: "The following has been dissolved: [list]"
- Note what remains: "What survives: [list]"
- Resist premature reconstruction — do not immediately propose a replacement for what was dissolved
- Allow the cleared space to inform what comes next
- The void is not emptiness — it is potential. The next step (creation via
brahma-bhagaor preservation viavishnu-bhaga) emerges from this space
Got: A moment of clarity between the old and the new. The next direction becomes apparent from what remains rather than being forced.
If fail: If the void feels uncomfortable and there is a strong pull to immediately rebuild, that urgency is itself a signal — it may indicate attachment to the dissolved pattern. Sit longer. The right next step will emerge.
Validation
- Stale assumptions were identified and explicitly released
- Failed approaches were acknowledged without defensiveness
- Accumulated noise was cleared from the working context
- The preservation boundary was established before dissolution
- Core requirements and user preferences were preserved
- The cleared space was acknowledged before moving to creation
Pitfalls
- Destroying too much: Dissolution without a preservation boundary destroys working components along with stale ones. Always draw the boundary first
- Destroying too little: Polite dissolution that "releases" things while still letting them influence reasoning. True dissolution requires actually letting go
- Skipping the void: Rushing from destruction to creation without sitting in the cleared space produces a recreation of the old pattern with superficial changes
- Performing destruction: Going through the motions of clearing without actually updating the internal model. If the same assumptions reappear in the next response, dissolution was performative
- Destruction as avoidance: Using dissolution to escape a difficult problem rather than to clear genuine staleness. If the problem persists after clearing, it was not the stale context — it was the problem itself
Related Skills
brahma-bhaga— creation follows destruction; after clearing, new patterns emerge from the voidvishnu-bhaga— preservation complements destruction; what survives dissolution is sustainedheal— subsystem assessment may reveal what needs dissolution before healing can proceedmeditate— clearing context noise before dissolution prevents reactive over-destructiondissolve-form— the morphic equivalent for architectural dismantling with imaginal disc preservation
GitHub Repository
Related Skills
content-collections
MetaThis skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.
polymarket
MetaThis skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.
creating-opencode-plugins
MetaThis skill helps developers create OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It provides the plugin structure, event API specifications, and implementation patterns for JavaScript/TypeScript modules. Use it when you need to intercept, monitor, or extend the OpenCode AI assistant's lifecycle with custom event-driven logic.
sglang
MetaSGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.
