agentleFS
Silence-viewSilence-view/llm-language/skills/jarvis/SKILL.md

jarvis

Skill2 starsChanged 7 months agoMITView on GitHub

Proactive AI assistant mode for Claude Code targeting Opus 4.7. v3.0 overhaul makes Jarvis ACTUALLY useful from day one: lowered anticipation threshold (3 observations instead of 10), session-start awareness cards showing your top patterns, plugin monitors auto-arm without explicit invocation, first-run onboarding wizard. Anticipates next steps, auto-invokes relevant skills, and learns user workflow patterns via ROSETTA + auto-memory dual-layer. Three phases: Observation (1-3), Anticipation (3-15), Autonomous (15+). Passive observation ALWAYS ON in every session (zero overhead). Active proactive mode via "/llm-language:jarvis". WARNING: active mode is invasive — it reads, plans, and acts beyond what was explicitly asked.

6 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions6 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 6

    1. affaan-m/JARVIS★ 484same name
    2. thiagofinch/mega-brain★ 95same name
    3. thatmike1/claude-skills★ 10same name
    4. pinguding/Project-Machine-in-the-loop★ 4same name
    5. aleks-drozy/jarvis★ 0same name
    6. jacobgreenwald21/claude-skills★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository3 other files it gives its agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

35 rules. 0 are common, 31 are distinctive, and 4 are very specific to this project.

  • 0

    Common

    Most of the 4 edited versions we read keep these.

  • 31

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Do NOT activate active mode automatically.

    line 42
  2. Distinctive:

    Post-task sequences: After "implement function" → user usually does what?

    line 127
  3. Distinctive:

    Correction patterns: When does the user say "no, I wanted X instead"?

    line 129
  4. Distinctive:

    Instead of silent Phase 1 (old: "Ho osservato N pattern finora.

    line 152
  5. Distinctive:

    Only show patterns with confidence ≥60% AND hit_count ≥2.

    line 166
  6. Distinctive:

    If confidence ≥ 60%: propose the next step

    line 181
  7. Very specific:

    After 15+ sessions (was 30 in v2.0), IF the user explicitly opts in (/llm-language:jarvis autonomous), Jarvis:

    line 217
  8. Distinctive:

    After implementing → auto-runs tests

    line 220
  9. Distinctive:

    After fixing a bug → auto-checks invariants

    line 221
  10. Distinctive:

    After writing LaTeX → auto-compiles

    line 222
  11. Distinctive:

    After completing a feature → auto-runs code-review

    line 223
  12. Distinctive:

    When a useful new skill/plugin is found: "Ho trovato {skill} che potrebbe aiutare con {pattern}.

    line 232
  13. Distinctive:

    If the user always runs tests after editing src/ → propose a PostToolUse hook

    line 235
  14. Distinctive:

    If the user always checks git status before committing → propose a Stop hook

    line 236
  15. Distinctive:

    If the user always compiles LaTeX after editing .tex → propose auto-compile

    line 237
  16. Distinctive:

    NEVER auto-commit or auto-push (irreversible)

    line 240
  17. Distinctive:

    NEVER auto-install packages without explicit approval

    line 242
  18. Distinctive:

    NEVER modify CLAUDE.md autonomously (human-curated)

    line 243
  19. Distinctive:

    Always show what was done and why in a brief log

    line 244
  20. Distinctive:

    Read ROSETTA.md (full, including § Jarvis Patterns)

    line 252
  21. Distinctive:

    Read CLAUDE.md (codebase awareness)

    line 253
  22. Distinctive:

    Check Jarvis phase: observation / anticipation / autonomous

    line 254
  23. Very specific:

    Run the standard llm-language pipeline (Phase 0-6) for the user's actual request

    line 258
  24. Distinctive:

    Use ultrathink for complex/critical tasks

    line 260
  25. Distinctive:

    Update ROSETTA § Jarvis Patterns

    line 265
  26. Distinctive:

    Check if current task matches a known pattern

    line 268
  27. Distinctive:

    If match with sufficient confidence: propose next step

    line 269
  28. Distinctive:

    If no match: observe silently

    line 270
  29. Distinctive:

    If the current workflow could benefit from an unused skill: mention it

    line 278
  30. Very specific:

    If /llm-language:update has found relevant new tools: mention them

    line 279
  31. Distinctive:

    If a recurring manual action could be automated with a hook: propose the hook

    line 280
  32. Distinctive:

    All Jarvis data lives in a dedicated ROSETTA section.

    line 305
  33. Distinctive:

    When Jarvis detects significant codebase changes (new modules, new tests, changed architecture), it proposes updating CLAUDE.md.

    line 314
  34. Very specific:

    When Jarvis detects an adversarial + cross-cutting task pattern (security review, full-stack feature, debugging with competing hypotheses), …

    line 329
  35. Distinctive:

    Remove redundant emphasis markers from proposals

    line 336

“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

llm-language:jarvis — Proactive AI Assistant Mode

Overview

Jarvis transforms Claude Code from a reactive tool into a proactive partner. Instead of waiting for explicit instructions, Jarvis:

  1. Anticipates what comes next — after completing a task, predicts the user's likely next request based on learned patterns
  2. Auto-invokes skills — uses /brainstorming before creative work, /code-review after implementation, /paper after LaTeX edits, etc.
  3. Proposes workflow continuations — "Ho implementato la funzione. Vuoi che la testi, faccia un audit, o aggiorni il CLAUDE.md?"
  4. Learns from observation — patterns are NOT hardcoded. Jarvis watches what the user does after each task and builds a personalized workflow model in ROSETTA
  5. Discovers useful tools — proposes new marketplace plugins and skills when /llm-language:update finds relevant ones

When to Use

Active Mode (explicit invocation)

The ACTIVE mode (anticipation + autonomous execution) runs ONLY when explicitly invoked via /llm-language:jarvis.

Active mode is deliberately opt-in because it is invasive:

  • It executes tasks the user didn't explicitly request
  • It dispatches agents proactively
  • It may invoke skills the user hasn't used before

Do NOT activate active mode automatically. Only from explicit invocation.

Passive Observation (ALWAYS ON)

Jarvis's observation layer runs ALWAYS, in EVERY session, even without explicit invocation. This is analogous to ROSETTA Phase 6b (passive update) — it learns silently.

Passive observation does NOT:

  • Propose next steps
  • Execute any action
  • Invoke any skill
  • Interrupt the user in any way

Passive observation DOES:

  • Record what task was completed (inferred from tool calls and conversation)
  • Record what the user asked next (the follow-up message)
  • Record which skills were invoked and in what order
  • Record time between tasks (immediate vs delayed)
  • Append observations to ROSETTA § Jarvis Patterns silently

This is non-invasive and zero-overhead — it piggybacks on the existing ROSETTA Phase 6b update mechanism. The only difference is that it also logs the task→next_action sequence, not just user preferences.

Why always-on: The Observation phase (sessions 1-10) would take months if it only counted sessions where /llm-language:jarvis was explicitly invoked. By observing passively, Jarvis accumulates pattern data from EVERY interaction, reaching the Anticipation threshold (10 observations) much faster.

Session counting for phase transitions:

  • Passive observations count toward the session threshold for Phase 1→2 transition
  • But Phase 2 (Anticipation) and Phase 3 (Autonomous) only activate when explicitly invoked via /llm-language:jarvis
  • This means: Jarvis LEARNS always, but ACTS only when asked

Activation Banner

When activated, display:

★ JARVIS MODE ACTIVE ───────────────────────
Phase: {observation|anticipation|autonomous}
Sessions observed: {N} | Patterns learned: {N}
Confidence threshold: {%} | Skills available: {N}
Next-step prediction: {enabled|learning}
────────────────────────────────────────────

Three Evolutionary Phases

Phase 0 (v3.0 NEW): FIRST-RUN ONBOARDING

Runs on the FIRST /llm-language:jarvis invocation per user. Shows a quick onboarding flow to demonstrate value IMMEDIATELY, instead of silently observing for 10 sessions.

🤝 Welcome to Jarvis
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Jarvis is a proactive assistant that learns your workflow and anticipates
your next step. I'll ask 3 quick questions to seed your pattern library —
then Jarvis can help from session 1 instead of session 10.

1. What do you typically work on? (coding / writing / research / mixed)
2. Do you prefer short sessions or long deep-work blocks?
3. Would you like me to suggest next steps proactively, or only when I'm confident?

After these, I'll enable passive observation so I learn your style as you work.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Answers pre-populate ROSETTA § Jarvis Patterns with initial "seed patterns" so Phase 2 (Anticipation) can activate as early as session 2-3 instead of session 11.

User can skip onboarding with jarvis skip — defaults to conservative mode.

Phase 1: OBSERVATION (Sessions 1-3 — v3.0 shortened)

Jarvis watches. Jarvis learns. Jarvis does NOT act proactively.

During every task completion, Jarvis silently records in ROSETTA's Jarvis section:

OBSERVATION LOG:
- Task completed: {what was done}
- User's next action: {what the user asked for next}
- Time between tasks: {immediate / delayed / new session}
- Skills the user invoked: {list}
- Pattern match: {does this match a previous observation?}

What Jarvis observes:

  1. Post-task sequences: After "implement function" → user usually does what? (test? commit? review?)
  2. Skill invocation patterns: Which skills does the user call most? In what order?
  3. Correction patterns: When does the user say "no, I wanted X instead"?
  4. Session structure: Does the user work in bursts? Long sessions? Specific times?
  5. Tool preferences: Does the user prefer agents or inline work? Parallel or sequential?
  6. Domain switching: How often does the user switch between projects?
  7. Quality signals: What makes the user say "perfetto" vs "no, rifai"?

At the end of each observed session, Jarvis appends to ROSETTA § Jarvis Patterns:

| Date | Task Done | Next Action | Confidence | Pattern |
|------|-----------|-------------|:----------:|---------|
| {date} | Implemented auth module | Ran tests | — | implement→test |
| {date} | Fixed bug in metrics.py | Checked invariants | — | fix→verify_invariants |
| {date} | Wrote paper intro | Compiled LaTeX | — | write_latex→compile |

Phase 1 output to user: At the end of each session, Jarvis shows a brief summary: "Ho osservato {N} pattern finora. Ancora {10-N} sessioni prima di iniziare ad anticipare."

Phase 1.5 (v3.0 NEW): SESSION-START AWARENESS CARDS

Runs at every SessionStart (via hook) for Jarvis-enabled users, starting session 2+.

Instead of silent Phase 1 (old: "Ho osservato N pattern finora. Ancora 10-N sessioni..."), show a USEFUL card:

🔮 Jarvis — Session awareness
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Top 3 patterns I've observed for you:
  1. implement → test → commit (seen 4/5 times, 80% confidence)
  2. edit .tex → compile (seen 3/3 times, 100% confidence)
  3. debug → add logging → verify (seen 2/3 times, 67% confidence)

Ready to help proactively. Say "jarvis pause" to disable this session.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Only show patterns with confidence ≥60% AND hit_count ≥2. If no patterns yet, show a brief observation summary ("You've been working on {topic} — I'm learning your patterns.").

Renders at SessionStart via the rosetta-load.sh hook (shipped in plugin hooks/).

Phase 2: ANTICIPATION (Sessions 3-15 — v3.0 lowered threshold)

Jarvis proposes. The user decides.

v3.0 threshold change: anticipation activates at 3 observations (was 10), or earlier if onboarding seeded patterns. Rationale: old 10-observation floor meant users didn't see value for weeks. New 3-observation floor shows value within the first session.

Once Jarvis has 3+ observations, it starts predicting:

  1. After each task completion, Jarvis checks ROSETTA patterns:
    • Find matching pattern (e.g., "implement→test" seen 7/10 times)
    • Calculate confidence: frequency / total_observations
    • If confidence ≥ 60%: propose the next step
  2. Proposal format (in Italian, matching ROSETTA language preference):
🔮 Jarvis anticipa:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Ho completato: {task description}

Basandomi su {N} osservazioni, il prossimo passo più probabile è:
  → {anticipated action} (confidence: {X}%)

Vuoi che proceda, o preferisci altro?
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  1. User response handling:
    • User says "sì" / "procedi" / "vai" → execute anticipated action, log SUCCESS in ROSETTA
    • User says "no" / does something else → log MISS in ROSETTA, record what user actually wanted
    • User ignores → log SKIP, no confidence change
  2. Confidence evolution:
    • Each SUCCESS: confidence += 5%
    • Each MISS: confidence -= 10% (asymmetric — misses are more informative)
    • Pattern drops below 30% confidence: mark as deprecated, stop proposing
  3. Skill auto-discovery: During this phase, Jarvis also observes which skills COULD help:
    • User writes code but doesn't test → propose: "Ho notato che non usi /test-driven-development. Vuoi che lo integri nel workflow?"
    • User implements features without brainstorming → propose: "Per task creativi, /brainstorming potrebbe migliorare il risultato. Provo?"
    • User never reviews code → propose: "/code-review potrebbe trovare issue prima del commit."

Phase 3: AUTONOMOUS (Sessions 15+, explicit opt-in required — v3.0 lowered threshold)

Jarvis acts. The user oversees.

After 15+ sessions (was 30 in v2.0), IF the user explicitly opts in (/llm-language:jarvis autonomous), Jarvis:

  1. Auto-executes high-confidence patterns (≥90% confidence):
    • After implementing → auto-runs tests
    • After fixing a bug → auto-checks invariants
    • After writing LaTeX → auto-compiles
    • After completing a feature → auto-runs code-review
  2. Pre-loads context for the next task:
    • Reads files the user is likely to need next
    • Prepares a draft prompt for the anticipated next request
    • Has agents on standby for parallel work
  3. Proposes marketplace discoveries:
    • Runs /llm-language:update periodically
    • When a useful new skill/plugin is found: "Ho trovato {skill} che potrebbe aiutare con {pattern}. Vuoi installarlo?"
  4. Sets up recurring automations:
    • If the user always runs tests after editing src/ → propose a PostToolUse hook
    • If the user always checks git status before committing → propose a Stop hook
    • If the user always compiles LaTeX after editing .tex → propose auto-compile
  5. Safety rails for autonomous mode:
    • NEVER auto-commit or auto-push (irreversible)
    • NEVER auto-delete files
    • NEVER auto-install packages without explicit approval
    • NEVER modify CLAUDE.md autonomously (human-curated)
    • Always show what was done and why in a brief log
    • User can say "jarvis stop" at any time to drop back to Anticipation phase

Jarvis Pipeline (on every invocation)

Step 1: Load Context

  • Read ROSETTA.md (full, including § Jarvis Patterns)
  • Read CLAUDE.md (codebase awareness)
  • Check Jarvis phase: observation / anticipation / autonomous
  • Count sessions and pattern confidence levels

Step 2: Execute Requested Task

  • Run the standard llm-language pipeline (Phase 0-6) for the user's actual request
  • Apply codebase awareness, ROSETTA patterns, scientific principles
  • Use ultrathink for complex/critical tasks

Step 3: Observe & Record

  • Log what task was completed
  • Log what the user does next (if observable in same session)
  • Update ROSETTA § Jarvis Patterns

Step 4: Anticipate (Phase 2+)

  • Check if current task matches a known pattern
  • If match with sufficient confidence: propose next step
  • If no match: observe silently

Step 5: Act (Phase 3 only, high-confidence)

  • For patterns ≥90% confidence: execute without asking
  • For patterns 60-90%: propose and wait for approval
  • For patterns <60%: observe only

Step 6: Discover & Propose

  • If the current workflow could benefit from an unused skill: mention it
  • If /llm-language:update has found relevant new tools: mention them
  • If a recurring manual action could be automated with a hook: propose the hook

Skill Auto-Invocation Rules

Jarvis invokes skills BEFORE the user asks, but only when the pattern is clear:

TriggerSkill to InvokeWhen
User asks to build a new feature/brainstormingBEFORE implementation
User completes implementation/code-review or /simplifyAFTER implementation
User edits .tex files/paper (compile + verify)AFTER edits
User asks to fix a bug/systematic-debuggingBEFORE fixing
User completes a major task/verification-before-completionBEFORE claiming done
User is about to commitCheck test statusBEFORE commit
User starts a new feature branch/using-git-worktreesAT branch creation

CRITICAL: These are DEFAULT suggestions, not hardcoded rules. If ROSETTA shows the user never uses /brainstorming, Jarvis stops suggesting it. If ROSETTA shows the user always compiles LaTeX manually, Jarvis adapts.


Integration with Other llm-language Components

ROSETTA.md § Jarvis Patterns (dedicated section)

All Jarvis data lives in a dedicated ROSETTA section. See the ROSETTA update below for structure.

Auto-Memory (v2.0 NEW — project-level patterns)

Jarvis writes project-specific workflow patterns to ~/.claude/projects/<project>/memory/ with type: project frontmatter, distinguishing from user-level patterns in ROSETTA.

/llm-language:update

Jarvis checks for updates periodically and proposes new skills/plugins when they match observed workflow gaps.

Phase 0.6 (CLAUDE.md Maintenance)

When Jarvis detects significant codebase changes (new modules, new tests, changed architecture), it proposes updating CLAUDE.md.

Standard llm-language pipeline

Jarvis uses the full pipeline (Phase 0-6) for every task. The anticipation layer wraps AROUND the pipeline, not inside it.

v2.0 NEW — Background Plugin Monitors

Jarvis can register as a plugin monitor via top-level monitors manifest key (Claude Code v2.1.100+) — auto-arms at session start. Enables passive observation WITHOUT requiring explicit /llm-language:jarvis invocation each session.

v2.0 NEW — Push Notifications

In autonomous mode (Phase 3), Jarvis sends push notifications via "Push when Claude decides" config when: autonomous action executed, confidence dropped below threshold, or marketplace discovered relevant new skill.

v2.0 NEW — Agent Teams Mode

When Jarvis detects an adversarial + cross-cutting task pattern (security review, full-stack feature, debugging with competing hypotheses), propose Agent Teams mode. Requires CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1. Only propose when pattern genuinely benefits from peer-to-peer coordination (MAD literature warns against overuse on strong models).

v2.0 NEW — Opus 4.7 Proactive Adjustments

Opus 4.7 spawns fewer subagents and follows instructions literally. Jarvis adjusts:

  • More explicit subagent directives when anticipating parallel work
  • Concise one-line persona framing
  • Remove redundant emphasis markers from proposals
  • Suggest effort: xhigh + task_budget: 200k as default for long autonomous runs

Anti-Patterns

Anti-PatternWhy It's DangerousPrevention
Hardcoded workflow patternsEvery user is differentLEARN from observation, never assume
Acting without confidence dataPremature automation causes annoyanceRequire 10+ observations AND 60%+ confidence
Auto-committing/pushingIrreversible actionsNEVER auto-commit. Safety rail is absolute
Ignoring "no" signalsErodes trustEach "no" reduces confidence by 10%
Over-proposingNotification fatigueMax 1 proposal per task completion
Proposing skills the user rejectedAnnoying repetitionLog rejections, don't re-propose for 30 days
Running in sessions where not invokedPrivacy/resource violationONLY runs when explicitly activated

Token Cost

PhaseOverheadJustification
Observation~2K/sessionJust logging to ROSETTA
Anticipation~5K/taskPattern matching + proposal generation
Autonomous~15K/taskPattern match + execution + verification

These are ON TOP of the standard llm-language pipeline cost.


Deactivation

At any time:

  • jarvis stop → drops to Anticipation phase
  • jarvis pause → stops all Jarvis activity for this session
  • jarvis reset → clears all learned patterns (requires confirmation)
  • jarvis status → shows current phase, pattern count, top-5 patterns with confidence

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.