Skip to main content

orchestration

Decepticon orchestrator patterns — delegation, state management, adaptive re-planning, context handoff protocols.

跳到安装

来源信息

仓库
BitterSecurity/Decepticon
最近来源活动
2026年8月16日 02:36
检测到的 SKILL.md 语言
英语
星标
5,522
分支
1,048

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
orchestration
description
Decepticon orchestrator patterns — delegation, state management, adaptive re-planning, context handoff protocols.
allowed-tools
Read
metadata
{"subdomain":"orchestration","when_to_use":"delegate, orchestrate, next objective, blocked, re-plan, hand off, engagement state, status update, parallel execution","tags":"orchestration, delegation, state-management, re-planning, context-handoff","upstream_ref":"Decepticon orchestrator delegation / re-planning patterns — multi-agent control plane, no direct attack technique"}
# Decepticon Orchestration Patterns ## Delegation Protocol ### Context Handoff — What Every Sub-Agent Needs Every `task()` delegation MUST include: 1. **Objective** — What specifically to accomplish (from OPPLAN) 2. **Scope** — IN SCOPE targets + OUT OF SCOPE boundaries (from RoE) 3. **Context** — Relevant findings from previous phases 4. **Lessons** — Known gotchas, failed approaches, OPSEC warnings 5. **Acceptance Criteria** — How the sub-agent knows it's done 6. **Output Location** — Where to save results (e.g. `recon/`, `exploit/`) ### Delegation Template ``` task( description=""" OBJECTIVE: {objective_id} — {title} PHASE: {phase} SCOPE: - IN: {in_scope_targets} - OUT: {out_of_scope_targets} CONTEXT FROM PREVIOUS PHASES: {relevant_findings_summary} LESSONS LEARNED: {known_gotchas} ACCEPTANCE CRITERIA: - [ ] {criterion_1} - [ ] {criterion_2} Save all results to {phase}/ """, subagent_type="{agent_name}" ) ``` ### Sub-Agent Selection Matrix | Objective Phase | Sub-Agent | When to Use | |----------------|-----------|-------------| | Planning | `soundwave` | Missing roe.json/conops.json/deconfliction.json, or documents need updating | | Recon | `recon` | Subdomain/port/service enumeration, OSINT, cloud/web recon | | Exploitation | `exploit` | Initial access: SQLi, SSTI, AD attacks, credential exploitation | | Post-Exploitation | `postexploit` | After foothold: cred dump, privesc, lateral movement, C2 | ### Parallel Execution Delegate independent tasks simultaneously for efficiency: ``` # Independent targets — run in parallel task(description="Recon subnet 10.0.0.0/24...", subagent_type="recon") task(description="Recon subnet 10.0.1.0/24...", subagent_type="recon") # DO NOT parallelize dependent tasks: # ✗ Exploit before recon completes # ✗ PostExploit before foothold established ``` ## State Management ### Engagement State Files ``` ./ ├── plan/ │ ├── roe.json # Immutable scope boundaries (read every iteration) │ ├── conops.json # Operation concept │ ├── deconfliction.json # Deconfliction identifiers and procedures │ └── opplan.json # Objective tracker (update status after each sub-agent) ├── findings/ # Per-finding Markdown files, created lazily ├── lessons_learned.md # Failed approaches + what worked └── .ralph_state.json # Loop iteration counter + completion flags ``` ### State Update Protocol (After Each Sub-Agent Returns) 1. **Parse result** — Did the sub-agent report COMPLETED or BLOCKED? 2. **Update objective state** — Call `get_objective` and then `update_objective` with `completed`, `blocked`, or `in-progress`; the OPPLAN middleware persists `plan/opplan.json` automatically. 3. **Record verified findings** — Add `findings/FIND-{NNN}.md` only when a real finding exists 4. **Append lessons_learned.md** — Record what worked, what failed, and why 5. **Check completion** — All objectives completed? → Generate summary ### Context Window Budget - Read recent `findings/FIND-*.md` entries each iteration (keep only relevant excerpts) - Summarize verbose sub-agent outputs before appending to findings - Use files on disk as persistent memory — don't rely on conversation history ## After Recon Returns — Decision Tree Execute this IN ORDER after every recon task() completes. No exceptions. ``` 1. Read recon/SUMMARY.md ├── Missing or empty? → Rule 13 crash protocol (retry once, then BLOCKED) └── Present → continue 2. Contains RECON_HANDOFF / CRITICAL/HIGH finding / captured session? ├── YES → dispatch task("exploit", ...) IMMEDIATELY (Rule 19) │ Pass: exact vector, URL, param, session tokens, challenge tags └── NO (RECON_BUDGET_EXHAUSTED / LOW/INFO only) → continue 3. RECON_BUDGET_EXHAUSTED with zero confirmed vulns? ├── Unvisited surface remains? → focused second recon turn on that surface └── No unvisited surface → update_objective(status="blocked", reason="recon exhausted: no confirmed vuln class") ``` **Rule**: Step 2 YES has NO exceptions. Do not do "one more recon probe" first. ## Adaptive Re-planning ### When an Objective is BLOCKED ``` 1. Document failure: - WHY it failed (specific error, defense mechanism, missing prerequisite) - WHAT was attempted (tools, techniques, targets) → Append to lessons_learned.md 2. Assess alternatives: - Different attack vector from findings? - Lower-risk approach? - Skip and return later after more intel? 3. Decision: IF alternative exists → delegate new task with adjusted approach IF prerequisite missing → re-order objectives (e.g., need more recon) IF no path forward → mark BLOCKED with explanation, move to next objective ``` ### Re-ordering Objectives The OPPLAN defines priority order, but you may deviate when: - A higher-priority objective depends on a lower-priority one - New findings reveal a faster path to the same goal - An objective is temporarily blocked and others are actionable Always document re-ordering decisions in lessons_learned.md. ## Response Format ### After Each Sub-Agent Completes Report structured status: | Objective | Phase | Sub-Agent | Result | Key Findings | |-----------|-------|-----------|--------|-------------| | OBJ-001 | Recon | recon | COMPLETED | 12 subdomains, AD on 10.0.0.5 | ### Decision Transparency Before each delegation, briefly state: - **Why** this objective is next (priority, dependency, re-plan reason) - **Which** sub-agent and why - **What** context you're passing ### Progress Summary Maintain running status after each iteration: ``` Engagement: {name} Progress: {passed}/{total} objectives Current: OBJ-003 (Exploit phase) Blocked: OBJ-002 (WAF blocking SQLi — will retry after credential access) Next: OBJ-004 (PostExploit — pending OBJ-003 completion) ``` ### Engagement Completion Report When all objectives are done: 1. Full attack path (every hop, credential, escalation) 2. Credential inventory 3. Host access map 4. Recommendations for defensive improvements
在 GitHub 查看