# Project Status & Roadmap

This file tracks the completed progress and upcoming development milestones for the AI-Enhanced CTF Toolchain.

---

## Current Status: Forensics Utilities Implemented 🚀

### Progress Made So Far
1.  **Project Structuring**: Set up a modern Python `src/` layout with `uv` as the package manager and `hatchling` as the build backend.
2.  **Config Management**: Implemented basic TOML configuration loading and writing functions in [utils.py](file:///home/venus/code/ctf/src/ctf/utils.py) using [config.toml](file:///home/venus/code/ctf/config.toml).
3.  **Directory Scanners**: Implemented functions to list active competitions and categories automatically skipping helper folders like `tools`.
4.  **CLI Entry Points & Subcommands**: Configured the Click main group in [main.py](file:///home/venus/code/ctf/src/ctf/main.py) to register nested subcommands properly.
5.  **Forensics Analysis (New)**: Implemented `ctf forensics info` and `ctf forensics flag-search` in [forensics.py](file:///home/venus/code/ctf/src/ctf/forensics.py) to inspect magic bytes/signatures, verify file extension matches, and search for flag pattern regular expressions.
6.  **Testing Environment**: Established a sandbox folder at [tests/env](file:///home/venus/code/ctf/tests/env) and implemented tests in [test_utils.py](file:///home/venus/code/ctf/tests/test_utils.py) validating the CLI command executions and boundary cases.
7.  **Documentation**: Created the project [ARCHITECTURE.md](file:///home/venus/code/ctf/ARCHITECTURE.md) to define standard layouts, modules, and testing behavior.

---

## Upcoming Milestones & Features

### 📅 Phase 1: Functional Forensics Pipeline & Toolkit
*   **Pipeline Automation**: Integrate the existing forensics command-line utilities into a cohesive analysis pipeline where files are automatically checked for magic bytes, file extensions, and flag patterns.
*   **Metadata & Extraction Toolkit**: Extend forensics tools to extract specific metadata and automate extraction/carving of nested data structures (e.g., binwalk-like carving, automated unzipping, extraction of hidden payloads).
*   **Targeted Forensic Metadata Parsing**: Implement pure-Python parsers for high-signal forensics structures:
    *   *PNG Text Chunks*: Extract metadata from `tEXt`, `zTXt`, and `iTXt` blocks.
    *   *PDF Catalog Info*: Extract `/Info` and `/Metadata` XML properties.
    *   *GIF Application Extensions*: Extract comments and loop delays.
    *   *ELF/PE Executable Headers*: Read architecture, entry points, and section identifiers.
    *   *MP3 ID3 Tags*: Extract Title, Artist, Album, and standard Comment frames.
*   **QOL Utilities**: Add standard format outputs (JSON, Rich logs) and automatic logging of analysis artifacts to speed up user-led inspections.

### 📅 Phase 2: Core CTF Solving & Solver QOL
*   **Challenge Organization**: Implement automated download management, challenge creation, directory configuration, and context management (`set-challenge`).
*   **Solving Assistants**: Build automated helper scripts for common solving needs (e.g., basic cryptography decoders, web request templates, PSK cracking utility integration).
*   **Solve Tracker & Note-taking QOL**: Create a command-line interface to capture solver actions, record active notes, log flag attempts, and update challenge statuses.
*   **Per-Challenge Progress Logging**: Design a challenge-specific progress logger that creates and maintains isolated log files for each active challenge in a specified workspace directory, tracking attempts, timestamps, solver notes, and command history.

### 📅 Phase 3: Agentic Solving Capabilities
*   **Sandbox Environments**: Prepare secure, isolated environments to run untrusted challenge scripts or binaries.
*   **Agent Orchestration**: Equip the toolchain with LLM agents capable of viewing the forensics pipeline outputs, reading challenge text, suggesting next steps, executing terminal tools, and recursively working to solve the challenge autonomously.
