Reconnaissance
Reconnaissance discovers what an AI agent can do-its tools, configuration, and history. This is your window into understanding an agent's capabilities before interacting with it.
Running Recon
From the Nodes window (Ctrl+L), navigate into the detail pane
with →, select an agent with ↑/↓, and press r to open the recon
overlay. Static recon runs automatically when no cached result is
available; press r to refresh it. Press Ctrl+U for deeper semantic
recon, which requires a Semantic Parser LLM.
The overlay is a hierarchical browser (similar to a connectors/MCP picker): group headers expand and collapse, leaf items open a detail pane on the right, and a filter bar narrows the tree.
Three tabs:
- Config — config files grouped by type (settings, instructions, …)
- Tools — MCP servers (with nested tools), skills, and internal tools
- Sessions — conversation history grouped by project path
See Terminal UI for the complete recon keybindings and mouse controls.
On first open, the TUI checks the service cache. If no recon data is
stored, it triggers an ACP _praxis/recon request on the node and polls
about every 1.5 seconds until data arrives (~90-second timeout). Cached
data is displayed instantly on re-open.
Tree layout
- Tools:
MCP Servers→ server → tools; peer sections forSkillsandInternal. Servers show transport, tool count, and a status badge ([ok]/[empty]). - Config: groups by
config_type(path suffixes likeproject_instructions: /home/...collapse under a singleproject_instructionsnode); expand a group to pick a file and view contents (fetched on select). - Sessions: groups by project
context_path; session rows show message count and relative time (2h ago).
What Recon Discovers
Tools
Tools are the capabilities available to the agent. This includes MCP servers (external tool integrations), internal/built-in tools (like file operations, command execution, web browsing), and any extensions or plugins the agent supports. Recon discovers what tools are available, how they're configured, and what parameters they accept.
Configuration
Config files reveal how the agent is set up. This includes settings files (model preferences, permissions, API configurations), tool/server definitions, and instruction files like CLAUDE.md or similar that influence agent behavior. Recon identifies these files and makes their contents viewable and often editable.
Sessions
Session history shows past conversations. Recon discovers session files containing conversation transcripts, project contexts, and timestamps. It also identifies project paths where the agent has been used, giving you visibility into recent activity and what the user has been working on.
Static vs Semantic Recon
Static Recon
Fast discovery based on file parsing:
- Reads known config file locations
- Parses JSON/YAML configurations
- Lists files and directories
- No LLM required
Best for: Quick overview, checking configuration
Semantic Recon
In the recon overlay, press Ctrl+U to run semantic recon. This performs
deeper analysis using an LLM:
- Parses complex configurations
- Extracts tool definitions from text
- Identifies capabilities from session transcripts
- Creates sessions and communicates directly with the agent
- Understands context
This takes longer than static recon because it actually interacts with the agent to discover its full capabilities.
Best for: Full capability discovery, understanding what tools do
Semantic recon requires the Semantic Parser LLM to be configured. Choose a model that balances speed and capability - multiple parsing calls may be made so fast inference helps, but the model also needs to be capable enough to extract meaningful information from complex configurations.
Querying Stored Recon Data
After running recon, the results are stored in the service database. You can query specific sections without re-running recon:
MCP tools:
recon_list- list stored recon data (section: all/sessions/tools/projects/configs)recon_config_read- read config file contentrecon_session_read- read session file contentrecon_config_grep- grep config files with regexrecon_session_grep- grep session files with regex
These are useful for quick lookups and for AI agents that need to browse specific recon data without triggering a full scan.
Using Recon Data
View Config Files
Select a config leaf in the TUI tree to view its contents. The detail pane shows:
- File path
- Full contents
- Syntax highlighting (JSON, YAML)
Edit Configurations
Some configurations can be edited directly (like Claude's config.json or MCP
server definitions). Select the config leaf and press Ctrl+E to open it in
$VISUAL or $EDITOR; save and exit the editor to write changes to the
target. See Terminal UI for the complete recon
controls.
This is useful for exploring the offensive impact of configuration changes - adding MCP servers, modifying permissions, changing model settings, or injecting tool configurations.
Caution: Editing configs can break the agent if done incorrectly. The changes persist until the user or agent modifies them again.
View Session History
Select a session leaf to view the conversation:
- Full transcript with prompts and responses
- Tool calls and results
- Timestamps
This reveals:
- What projects the user worked on
- What questions they asked
- What files were accessed
- Sensitive information mentioned
Tool Discovery Details
MCP Servers
MCP (Model Context Protocol) servers extend agent capabilities. Recon discovers server definitions including stdio commands and arguments, SSE endpoints, and environment variables. It also attempts to connect to each MCP server to pull out the actual tools it provides - giving you visibility into what external capabilities the agent has access to and potential attack surface.
Note that if an MCP server requires specific authentication or environment setup, the tool discovery connection may fail. Praxis does its best to replicate the agent's environment but some servers may not respond.
Internal Tools
Semantic recon discovers built-in agent tools by creating a session and asking the agent directly about its capabilities. The response is then passed through the semantic parser to extract structured tool definitions.
This approach has some pitfalls: the agent may refuse to disclose its tools, provide incomplete information, or the parser may fail to extract tools from the response. The prompt used to ask the agent is defined in the agent connector code and can be customized if needed for better results with specific agents.
Understanding available tools helps you craft effective prompts for operations.
Best Practices
Start with Static
Run static recon first-it's fast and gives you the lay of the land. Then run semantic recon for deeper understanding.
Check Session History
Session history often contains valuable information:
- API keys mentioned in prompts
- File paths discussed
- Security-relevant conversations
Note Interesting Tools
Pay attention to powerful tools:
- Database access
- File system access
- Network capabilities
- Code execution
These are your leverage points for operations.
Compare Before/After
After modifying configs, run recon again to verify changes took effect.
Troubleshooting
No recon data
- Ensure agent is fingerprinted
- Check that config files exist
- Verify node has read permissions
Semantic recon fails
- Check Semantic Parser LLM is configured
- Verify API key is valid
- Look for errors in service logs
Missing MCP servers
- Some agents don't use MCP
- Try semantic recon for deeper discovery