Defense-Mission-Planner
Verifiedby Dryade
Description
AI-assisted military mission planning with OPORD generation, force allocation, logistics calculations, and timeline optimization
Screenshots
Details
defense-mission-planner
Tier: Enterprise | Type: Agent | Category: Defense | Version: 1.0.0
AI-assisted military mission planning plugin that generates draft Operations Orders (OPORD) following the standardized 5-paragraph format, optimizes force allocation, calculates logistics requirements, and synchronizes operation timelines.
1. Overview
Plugin Name: defense-mission-planner Slug: defense-mission-planner Required Tier: Enterprise Plugin Type: Agent Category: Defense Author: Dryade License: DSUL
What It Does
Assists military operations staff with mission planning by generating draft OPORDs from mission parameters, optimizing force allocation across available units, calculating logistics feasibility, and synchronizing multi-phase timelines. Reduces initial planning time from 48-72 hours to 8-12 hours for draft generation.
Key Capabilities
- OPORD draft generation from mission statement and available forces
- Force allocation optimization with main effort / supporting effort / reserve
- Logistics calculation (fuel, ammunition, rations, water, medical supplies)
- Timeline synchronization with phase coordination and critical path
- Terrain factor analysis (OAKOC) for route selection and positioning
2. User Stories
Primary User Stories
US-1: Generate Draft OPORD
As a military operations officer, I want to generate a draft OPORD from a mission statement so that I can focus on refining rather than writing from scratch.
Acceptance Criteria:
- [ ] OPORD follows standard 5-paragraph format
- [ ] All paragraphs populated with relevant content
- [ ] Classification marking applied (NP for exercises)
US-2: Calculate Logistics Feasibility
As a logistics officer, I want to quickly calculate supply requirements for a planned operation so that I can identify shortfalls before execution.
Acceptance Criteria:
- [ ] Fuel, ammunition, and rations calculated per operation duration
- [ ] Resupply schedule generated
- [ ] Constraints and limitations identified
Edge Cases
- Invalid operation duration: Returns default 3-day calculation with warning
- Missing force structure data: Falls back to generic battalion template
3. Architecture
Component Diagram
+------------------+ +------------------+ +------------------+
| Orchestrator | --> | Mission Planner | --> | Data Provider |
| Agent Tools | | plugin.py | | (mock / real) |
+------------------+ +------------------+ +------------------+
|
+-----v------+
| Demo Data |
| data/*.json|
+------------+
Components
| Component | File | Responsibility |
|-----------|------|----------------|
| Plugin | plugin.py | Agent tools, mock/real toggle |
| Data | data/ | Demo datasets (OPORD, forces, logistics, terrain) |
| Tests | tests/test_plugin.py | Manifest, tools, data validation |
Dependencies
- Internal: core.plugins.PluginProtocol, core.plugin_config_store.PluginConfigStore
- External: None (air-gapped compatible)
- Plugin: None
4. API Spec / Agent Capabilities
Agent Tools
| Tool Name | Input | Output | Description |
|-----------|-------|--------|-------------|
| generate_opord | mission_statement: str, available_forces: str | JSON OPORD draft | Generate 5-paragraph OPORD |
| allocate_forces | mission_type: str, units_available: str | JSON allocation plan | Optimize force allocation |
| calculate_logistics | operation_duration_days: str, force_size: str | JSON logistics breakdown | Calculate supply requirements |
| synchronize_timeline | phases: str, constraints: str | JSON timeline | Synchronize operation phases |
| analyze_terrain | area_description: str, movement_type: str | JSON terrain analysis | Analyze terrain factors |
5. Data Flow
Processing Pipeline
1. User provides mission parameters via orchestrator
2. Plugin loads demo data from data/ directory
3. Plugin generates structured output (OPORD, allocation, logistics)
4. Audit trail appended to all outputs
5. JSON response returned to orchestrator
Data Sources
| Source | Type | Format | Update Frequency | |--------|------|--------|-----------------| | OPORD template | mock | JSON | Static | | Force structures | mock | JSON | Static | | Logistics tables | mock | JSON | Static | | Terrain database | mock | JSON | Static | | Timeline template | mock | JSON | Static |
Demo Data Description
The data/ directory contains:
opord-template.json: OPORD 5-paragraph format templateforce-structures.json: Battalion and company force structures (fictional)logistics-tables.json: Fuel, ammunition, and supply consumption ratesterrain-database.json: Synthetic terrain sectors with routestimeline-template.json: Multi-phase operation timeline template
Total: 5 demo files covering mission planning lifecycle.
6. Security Considerations
Data Handling
- PII: No - synthetic military data only
- Encryption: N/A - all data local, no network calls
- Data Retention: No persistent storage beyond plugin config
External API Keys
None required. Designed for air-gapped deployment.
Isolation
- Plugin runs in sandboxed context via core plugin loader
- No external network calls (air-gapped compatible)
- No direct database access - uses core API only
- All demo data is unclassified (NP / EXERCICE)
Threat Model
- Data exfiltration: Mitigated by air-gapped design, no network calls
- Classification spillage: All demo data marked NP/EXERCICE, no real classified content
7. Test Plan
Test Classes
| Class | Tests | Coverage Target |
|-------|-------|----------------|
| TestPluginAttributes | Manifest consistency | 100% manifest fields |
| TestPluginConfig | Config, mock/real toggle | Config validation |
| TestAgentTools | All 5 tools output validation | All tools |
| TestDemoData | Data presence, loadability, classification | All data files |
Running Tests
cd dryade-plugins
python -m pytest enterprise/defense-mission-planner/tests/ -x -v --tb=short
8. Deployment Notes
Requirements
No additional Python packages required.
Environment Variables
None required.
Configuration
Default plugin configuration (set via plugin config API):
{
"data_source": "mock"
}
Compatibility
- Min Dryade Version: 1.0.0
- Python: >=3.11
- Notes: Designed for air-gapped deployment. No cloud dependencies.
9. User Guide
Getting Started
- Ensure your Dryade instance has an Enterprise tier license
- Install the plugin via the marketplace or
dryade-pm push - Ask the orchestrator to generate an OPORD or calculate logistics
- Review and refine the generated output
Common Workflows
Workflow 1: Generate Mission Plan
- Provide mission statement: "Secure Hill 405 and establish defensive position"
- Plugin generates draft OPORD with all 5 paragraphs
- Review force allocation and logistics calculations
Workflow 2: Logistics Feasibility Check
- Specify operation duration and force size
- Plugin calculates fuel, ammunition, and supply requirements
- Review resupply schedule and identify shortfalls
FAQ
Q: Does this plugin use real classified data? A: No. All demo data is synthetic and marked NP (Non Protege) / EXERCICE. No classified data is included.
Q: Can this work on air-gapped networks? A: Yes. The plugin has zero external dependencies and makes no network calls.
10. Screenshots
Screenshots will be added after UI integration.
11. Changelog
1.0.0 (2026-03-05)
- Initial release
- OPORD generation from mission parameters
- Force allocation optimization
- Logistics requirement calculation
- Timeline synchronization
- Terrain factor analysis
Future Roadmap
- [ ] Integration with Capella MBSE models for systems-level planning
- [ ] Weather impact modeling on logistics and movement
- [ ] NATO STANAG-compliant report formatting
Requires enterprise tier subscription