Skip to content

Added cache-path functionality to agent - #80

Open
jessevz wants to merge 4 commits into
masterfrom
feature/hashcat-cache-path
Open

jessevz wants to merge 4 commits into
masterfrom
feature/hashcat-cache-path

Conversation

@jessevz

@jessevz jessevz commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

Add support for the hashcat cache path

@jessevz
jessevz marked this pull request as draft October 16, 2026 07:32
@jessevz
jessevz marked this pull request as ready for review October 20, 2026 06:48
@jessevz
jessevz requested review from s3inlc and a balanced review from Copilot October 20, 2026 06:56

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Cache-path interpolation permits shell expansion, and the documented minimum supported build contradicts the implementation.

2 open issues
What changed in this PR

Adds configurable hashcat caching so agents can retain wordlist and kernel caches across cracker updates.

Changes:

  • Adds CLI configuration and startup directory creation.
  • Passes cache arguments to supported hashcat versions.
  • Consolidates version parsing and adds tests and documentation.
File Description
tests/​test_cache_path.py Tests version gates, cache arguments, and output formats.
README.md Documents cache configuration and usage.
htpclient/​initialize.py Creates the configured cache directory.
htpclient/​hashcat_cracker.py Integrates cache arguments and shared version parsing.
changelog.md Records the cache-path feature.
main.py Adds CLI parsing and absolute-path normalization.

Review effort: Balanced

Comment thread README.md
Comment on lines +121 to +123
* The option is only passed to crackers new enough for it. It appears in hashcat at build
`7.1.2-627-g6570a49f2`, so the agent passes it to that build and later, and to any release after
7.1.2. Anything older, including the 7.1.2 release itself, stays silent and is unaffected.
if not isdir(cache_path):
logging.debug(f"Ignoring cache-path '{cache_path}': not a directory, hashcat will use its own cache location")
return []
return [f'{CACHE_PATH_FLAG}="{cache_path}"']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants