pentesting 0.100.1 → 0.100.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -5
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Pentesting 🔓
|
|
2
2
|
|
|
3
|
-
> **Pentesting** is a local-first Rust coding agent CLI for authorized security work, with
|
|
3
|
+
> **Pentesting** is a local-first Rust coding agent CLI for authorized security work, with audited reverse-shell and PTY session control: catch callbacks, verify upgrades, pivot across sessions, and reclaim them cleanly.
|
|
4
4
|
|
|
5
|
-
The runtime—not the model—owns routing, tool sandboxing, verification, completion adjudication, and PTY/session lifecycle management.
|
|
5
|
+
The runtime—not the model—owns routing, tool sandboxing, verification, completion adjudication, and PTY/session lifecycle management. PTYs are first-class runtime objects: upgrade state, resize authority, transcript capture, file-descriptor ownership, and close/revoke/gc reclamation are all tracked explicitly.
|
|
6
6
|
|
|
7
7
|
<div align="center">
|
|
8
8
|
<img src="https://api.iconify.design/hugeicons:bash.svg" alt="pentesting bash icon" width="120" />
|
|
@@ -27,6 +27,7 @@ Agent-loop essentials at parity with leading coding agents, plus a security-focu
|
|
|
27
27
|
| Context compaction | Automatic micro-pruning + model-triggered summarization, pre/post hooks |
|
|
28
28
|
| Interrupt & steering | ESC to interrupt mid-turn, queue follow-ups while it works |
|
|
29
29
|
| Reverse-shell control plane | Accept and track multiple authorized callbacks, tag/probe sessions, send/observe/run commands, verify PTY upgrades, and keep transcript/ledger/evidence records |
|
|
30
|
+
| PTY session control | Treat upgraded shells as managed PTY sessions with resize gating, transcript capture, FD accounting, and deterministic close/revoke/gc reclamation |
|
|
30
31
|
| Subagents | Parallel delegated tasks, budget-capped, role-specific personas |
|
|
31
32
|
| MCP & skills | Dynamic MCP tool discovery, layered markdown skills |
|
|
32
33
|
| Memory | Ebbinghaus-style decaying notes + hybrid lexical/semantic/graph retrieval |
|
|
@@ -54,16 +55,32 @@ No local Rust toolchain or native binary needed — the image ships the full
|
|
|
54
55
|
runtime plus the offensive testing toolchain:
|
|
55
56
|
|
|
56
57
|
```bash
|
|
58
|
+
export ANTHROPIC_AUTH_TOKEN="sk-..." # provider token
|
|
59
|
+
export ANTHROPIC_API_KEY="$ANTHROPIC_AUTH_TOKEN" # keep both for Anthropic-compatible gateways
|
|
60
|
+
export ANTHROPIC_BASE_URL="https://api.minimax.io/anthropic"
|
|
61
|
+
export ANTHROPIC_MODEL="MiniMax-M2.7"
|
|
62
|
+
export PENTESTING_SESSION__MODEL_ID="$ANTHROPIC_MODEL"
|
|
63
|
+
|
|
57
64
|
docker run -it --rm \
|
|
58
65
|
-v "$(pwd):/workspace" -w /workspace \
|
|
66
|
+
-e ANTHROPIC_AUTH_TOKEN \
|
|
59
67
|
-e ANTHROPIC_API_KEY \
|
|
68
|
+
-e ANTHROPIC_BASE_URL \
|
|
69
|
+
-e ANTHROPIC_MODEL \
|
|
70
|
+
-e PENTESTING_SESSION__MODEL_ID \
|
|
60
71
|
agnusdei1207/pentesting:latest
|
|
61
72
|
```
|
|
62
73
|
|
|
63
74
|
Or via Docker Compose:
|
|
64
75
|
|
|
65
76
|
```bash
|
|
66
|
-
PENTESTING_PROJECT_DIR=/path/to/project
|
|
77
|
+
PENTESTING_PROJECT_DIR=/path/to/project \
|
|
78
|
+
ANTHROPIC_AUTH_TOKEN=sk-... \
|
|
79
|
+
ANTHROPIC_API_KEY=sk-... \
|
|
80
|
+
ANTHROPIC_BASE_URL=https://api.minimax.io/anthropic \
|
|
81
|
+
ANTHROPIC_MODEL=MiniMax-M2.7 \
|
|
82
|
+
PENTESTING_SESSION__MODEL_ID=MiniMax-M2.7 \
|
|
83
|
+
docker compose run pentesting
|
|
67
84
|
```
|
|
68
85
|
|
|
69
86
|
### Common commands
|
|
@@ -117,11 +134,14 @@ Environment variables use the `PENTESTING_` prefix (`__` for nested keys, e.g. `
|
|
|
117
134
|
```bash
|
|
118
135
|
# Model provider credentials — set whichever provider(s) you use
|
|
119
136
|
export ANTHROPIC_API_KEY="sk-ant-..."
|
|
137
|
+
export ANTHROPIC_AUTH_TOKEN="$ANTHROPIC_API_KEY" # token used by Anthropic-compatible providers
|
|
138
|
+
export ANTHROPIC_BASE_URL="https://api.minimax.io/anthropic"
|
|
139
|
+
export ANTHROPIC_MODEL="MiniMax-M2.7"
|
|
120
140
|
export OPENAI_API_KEY="sk-..."
|
|
121
141
|
export OPENROUTER_API_KEY="sk-or-..."
|
|
122
142
|
|
|
123
143
|
# Runtime overrides (optional)
|
|
124
|
-
export PENTESTING_SESSION__MODEL_ID="
|
|
144
|
+
export PENTESTING_SESSION__MODEL_ID="$ANTHROPIC_MODEL" # default model for new sessions
|
|
125
145
|
export PENTESTING_CONFIG="$HOME/.config/pentesting" # move the global config dir
|
|
126
146
|
export PENTESTING_SKIP_DOWNLOAD=1 # skip postinstall binary download (CI)
|
|
127
147
|
```
|
|
@@ -131,8 +151,11 @@ With Docker, pass the same variables through with `-e`:
|
|
|
131
151
|
```bash
|
|
132
152
|
docker run -it --rm \
|
|
133
153
|
-v "$(pwd):/workspace" -w /workspace \
|
|
154
|
+
-e ANTHROPIC_AUTH_TOKEN \
|
|
134
155
|
-e ANTHROPIC_API_KEY \
|
|
135
|
-
-e
|
|
156
|
+
-e ANTHROPIC_BASE_URL \
|
|
157
|
+
-e ANTHROPIC_MODEL \
|
|
158
|
+
-e PENTESTING_SESSION__MODEL_ID \
|
|
136
159
|
agnusdei1207/pentesting:latest
|
|
137
160
|
```
|
|
138
161
|
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pentesting",
|
|
3
|
-
"version": "0.100.
|
|
3
|
+
"version": "0.100.3",
|
|
4
4
|
"builderReleaseTag": "v0.100.0",
|
|
5
|
-
"description": "pentesting — coding agent runtime with audited reverse-shell
|
|
5
|
+
"description": "pentesting — coding agent runtime with audited reverse-shell capture, verified PTY session upgrades, pivot control, evidence transcripts, and safe session reclamation.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "agnusdei1207",
|
|
8
8
|
"type": "module",
|