S-Dreamer commited on
Commit
97d4cd5
·
verified ·
1 Parent(s): 8fc72f3

Upload SKILL.md

Browse files
Files changed (1) hide show
  1. .claude/skills/osint-agent/SKILL.md +29 -0
.claude/skills/osint-agent/SKILL.md CHANGED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ name: osint-agent
3
+ description: Domain knowledge for the Claude-powered OSINT expert agent in agent/
4
+ ---
5
+
6
+ # OSINT Agent Module
7
+
8
+ The `agent/` module provides a `claude-opus-4-7` powered OSINT expert (`OSINTAgent`).
9
+ Requires `ANTHROPIC_API_KEY` env var.
10
+
11
+ ## Key design decisions
12
+
13
+ - **Prompt caching:** `OSINT_SYSTEM_PROMPT` (~2000 tokens) has `cache_control: {"type": "ephemeral"}`. One cached block is optimal — do not split the system prompt.
14
+ - **Adaptive thinking:** Always `thinking={"type": "adaptive"}`. Never use `budget_tokens` — deprecated on `claude-opus-4-7`.
15
+ - **History format:** Store `response.content` (the full block list, not just `.text`) in conversation history to preserve thinking blocks across turns.
16
+ - **Streaming:** `stream_chat()` calls `stream.get_final_message()` after exhausting `stream.text_stream` to capture complete content blocks for history.
17
+
18
+ ## Analysis types
19
+
20
+ `analyze_target(target, analysis_type)` dispatches to `_build_analysis_prompt()`:
21
+ `full | passive | threat | footprint | breach | darkweb | socmint`
22
+
23
+ ## Extending the agent
24
+
25
+ | Task | Where |
26
+ |---|---|
27
+ | Add analysis type | `_build_analysis_prompt()` prompts dict + CLI `--type` choices |
28
+ | Modify persona/knowledge | `OSINT_SYSTEM_PROMPT` — cache invalidates automatically |
29
+ | New convenience method | Build prompt string, call `self.chat()`, follow `generate_ioc_report()` pattern |