Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/hamzaamjad/cursor-rules/112-ira-ooda-integrationgit clone --depth 1 https://github.com/hamzaamjad/cursor-rulesWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/hamzaamjad/cursor-rules/112-ira-ooda-integration)<a href="https://agentmods.dev/rules/hamzaamjad/cursor-rules/112-ira-ooda-integration"><img src="https://agentmods.dev/badge/rules/hamzaamjad/cursor-rules/112-ira-ooda-integration.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01800 | $0.01800 |
| Opus 5 | $0.00900 | $0.00900 |
| Sonnet 5 | $0.00360 | $0.00360 |
| Haiku 4.5 | $0.00180 | $0.00180 |
Grade A, and why
112-ira-ooda-integration scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 208 lines — stays where its author put it; the contents beside it link to each section on GitHub.
IRA-OODA Integration: Strategic Depth with Tactical Agility
-
Purpose: Combine IRA's evidence-based strategic planning with OODA's rapid tactical execution, enabling organizations to maintain long-term vision while adapting quickly to immediate challenges.
-
Requirements:
- Strategic Layer (IRA):
- Use IRA for quarterly planning and major decisions
- Establish evidence base and research protocols
- Define success metrics and evaluation frameworks
- Create knowledge repository for organizational learning
- Tactical Layer (OODA):
- Deploy OODA loops for daily operations
- Maintain rapid response to environmental changes
- Feed tactical insights up to strategic layer
- Adjust tempo based on competitive dynamics
- Integration Points:
- OODA observations inform IRA investigations
- IRA research enhances OODA orientation models
- Strategic decisions cascade to tactical OODA cycles
- Tactical patterns trigger strategic IRA reviews
- Strategic Layer (IRA):
-
Validation:
- Check: Strategic goals guide tactical decisions
- Check: Tactical feedback influences strategic planning
- Check: Both frameworks maintain independent cycle times
- Check: Knowledge transfers between layers systematically
- Metric: Strategic coherence score > 85% despite tactical pivots
-
Examples: <example_correct> Description: Product development using integrated approach
class IntegratedDecisionSystem: def __init__(self): self.ira_cycle = IRACycle(period="quarterly") self.ooda_loops = {} # Multiple tactical loops self.knowledge_base = SharedKnowledgeRepo() # STRATEGIC LAYER (IRA) def strategic_planning(self): """Quarterly IRA cycle for product strategy""" # INVESTIGATE: Analyze market position investigation = { "market_analysis": self.aggregate_ooda_insights("market"), "user_research": self.analyze_feedback_patterns(), "competitive_landscape": self.research_competitors(), "evidence_gaps": self.identify_unknowns() } # RESEARCH: Deep dive into opportunities research_findings = { "user_needs": self.conduct_user_interviews(n=50), "technical_feasibility": self.prototype_solutions(), "market_fit": self.validate_assumptions() } # ACT: Set strategic direction strategic_actions = { "product_roadmap": self.update_roadmap(research_findings), "resource_allocation": self.allocate_teams(), "success_metrics": self.define_okrs(), "ooda_parameters": self.configure_tactical_boundaries() } # Update orientation models for OODA loops self.knowledge_base.update_strategic_context(strategic_actions) return strategic_actions # TACTICAL LAYER (OODA) def spawn_tactical_loop(self, domain: str): """Create domain-specific OODA loop""" class TacticalOODA: def __init__(self, domain, knowledge_base): self.domain = domain self.kb = knowledge_base self.strategic_context = self.kb.get_strategic_context() def observe(self): # Real-time observations return { "user_behavior": self.monitor_analytics(), "system_performance": self.check_metrics(), "competitor_moves": self.scan_market_signals() } def orient(self, observations): # Blend tactical data with strategic context orientation = { "tactical_situation": self.assess_immediate(observations), "strategic_alignment": self.check_strategy_fit(observations), "adaptation_needed": self.detect_drift() } # Feed significant patterns to IRA layer if orientation["adaptation_needed"] > 0.7: self.kb.flag_for_strategic_review(orientation) return orientation def decide(self, orientation): # Decisions within strategic boundaries if self.within_strategic_parameters(orientation): return self.autonomous_decision(orientation) else: return self.escalate_to_strategic_layer(orientation) def act(self, decision): results = self.execute_decision(decision) # Share learnings across system self.kb.record_tactical_outcome(results) return results self.ooda_loops[domain] = TacticalOODA(domain, self.knowledge_base) return self.ooda_loops[domain] # INTEGRATION LAYER def synchronize_layers(self): """Ensure strategic-tactical alignment""" # Bottom-up: Aggregate tactical insights tactical_patterns = self.analyze_ooda_patterns() # Top-down: Cascade strategic updates strategic_updates = self.ira_cycle.get_updates() # Bidirectional knowledge flow self.knowledge_base.synchronize( strategic=strategic_updates, tactical=tactical_patterns ) # Trigger IRA investigation if tactical variance is high if tactical_patterns["variance"] > self.threshold: self.ira_cycle.trigger_investigation(tactical_patterns)</example_correct>
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 208 lines · 1,800 tokens per session scan A 4672b4adfec5
112-ira-ooda-integration is a cursor rule published in the GitHub repository hamzaamjad/cursor-rules (2 stars, last pushed 1y ago), licensed MIT. It adds 1,800 tokens to every session, about $0.0090 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other cursor rules, from other repositories
ponytail
Ponytail, lazy senior dev mode. Always pick the simplest solution that works.
angular-20
This rule provides comprehensive best practices and coding standards for Angular development, focusing on modern TypeScript, standalone components, signals, and performance optimizations.
dev-standard
Apache Superset development standards and guidelines for Cursor IDE.
cli-error-handling
CLI command error handling patterns.
prefer-direct-imports-over-module-mocks
Prefer extracting a testable core over vi.mock / vi.resetModules when unit tests need to reach production logic entangled with config, env, or singletons.
control-plane-descriptors
Control plane descriptor and instance implementation patterns.