Skip to content
Install

What Pentect can do

A full list of what you can do with Pentect.

Clients

CapabilityEntry point
Protect Codex CLIpentect codex
Protect Claude Codepentect claude
Protect OpenCodepentect opencode --model MODEL
Protect Pipentect pi --model MODEL
Launch a protected Codex App sessionpentect codex app
Launch a protected Claude Desktop sessionpentect claude app
Pass normal client argumentsAdd them normally, for example pentect codex exec --full-auto
Select a compatible gateway for one launch--upstream URL
Add a plugin for one launch--plugins SOURCE
Check an app setup without launching itpentect codex app --check or pentect claude app --check

Antigravity, Aider, Continue, Cline, Roo Code, Zed, Goose, Junie, and Gemini CLI are not current capabilities. See Not implemented for their status pages.

Pentect changes only the process it starts. It does not create a permanent proxy for the whole system or replace the client UI.

Each adapter covers named client surfaces, not every feature in the product. See Compatibility for the exact boundary.

Protected content

CapabilityBehavior
Prompts and tool resultsReplaces sensitive text before supported requests are sent
MCP and connector resultsChecks supported text, structured values, and clipboard text; media follows the image policy
Completed tool callsRestores known handles just before a trusted local tool runs
Command outputMasks stdout and stderr before they return to the model
Structured configUses field names and syntax to create useful labels
UTF-8 uploadsChecks and rewrites supported Files API content
DocumentsChecks supported document formats sent in a request
ImagesWith OCR enabled, scans locally and covers detected areas; unchecked media follows image.unscanned
QR codes and barcodesChecks the text found in codes inside images
Browser screenshotsApplies the configured OCR and unchecked-media policy before supported results reach the provider
Unknown provider structuresReturns an error by default

Pentect runs a documented set of secret and personal-data detectors. Supported config formats include dotenv, Terraform, Kubernetes Secrets, kubeconfig, AWS, npm, PyPI, JSON, and other key/value formats. See Detectors and evidence for the source, version, coverage, and limits of every built-in detector.

The built-in personal-data detector covers email addresses, phone numbers, payment cards, IBANs, and selected strongly formatted national identifiers: UK NINO, India PAN, Italian fiscal code, Spanish NIF/NIE, Singapore FIN, Korean RRN, and Finnish personal identity code. Alcatraz's PERSON, LOCATION, and NRP entity types are not provided by the built-in engine, so names, street addresses, and those NLP-derived categories are not detected. URLs, IP addresses, dates, cryptocurrency addresses, and broad numeric identifiers remain visible by default because they commonly occur as non-secret operational data in source code and logs.

Handles

  • Keep a useful label such as DATABASE_URL or KAGGLE_API_TOKEN.
  • Use a private key when creating the handle ID.
  • Can stay the same per device or project, or change each session.
  • Are restored only when the current local session knows them.
  • Do not restore unknown or invented handle-like text.
  • Show handle details through pentect view without printing the value.
  • Provide a PENTECT_<LABEL>_<ID> environment binding inside protected tool processes.

See Handles for lifetime, recovery, environment syntax, and unknown-handle behavior.

Local CLI

CommandWhat it does
pentect maskMask UTF-8 text from stdin
pentect read PATHPrint a masked file preview
pentect exec "COMMAND"Restore known handles, run through a shell, and mask output
pentect exec -- PROGRAM...Run a program directly without shell parsing
pentect exec --live "COMMAND"Stream masked output while the command runs
pentect view HANDLEShow handle details without revealing the real value
pentect resolve [PATH...]Restore known handles from stdin or selected files
pentect log [--json] [--once [--tail N] | --follow | --path]Show bounded persistent diagnostics or follow events without secret values
pentect metrics [--json]Show local value-free counts by secret type and protection surface
pentect doctor [--json]Check the installation and supported clients
pentect doctor --fixOffer repairable configuration changes
pentect update [VERSION]Install a checksummed GitHub Release binary
pentect update --checkCheck for an update without installing it
pentect uninstallRemove Pentect but keep project data
sh
cat .env | pentect mask
cat terraform.tfvars | pentect mask

Custom gateways

Pentect can use an existing compatible gateway for one launch:

sh
pentect codex --upstream http://127.0.0.1:8080/openai/v1
pentect claude --upstream http://127.0.0.1:8080/anthropic

It supports the OpenAI Responses API used by Codex and the Anthropic Messages API used by Claude. It keeps the base path from your gateway URL.

Configuration and local state

CapabilitySetting
Stable handle identity on one device[handles] scope = "device"
Separate handle identity per project[handles] scope = "project"
New handle identity per session[handles] scope = "session"
Remember where file-based handles came from[files] remember = true
Share protection events between compatible local processes[activity] share = true
Require the agent to start through Pentect[agent] required = true
Allow unknown provider formats after a user choice[compatibility] unknown_formats = "ignore"

Pentect reads user settings from ~/.pentect/config.toml and project settings from .pentect/config.toml. A project cannot lower the user's protection for unknown formats.

For exact recovery and rollback steps, see Unknown provider format troubleshooting.

Plugins

CapabilityCommand or format
Regex detectorRegex rules in plugin.toml
Plugin code with more logicSandboxed WebAssembly
Create and run locallyplugins new, plugins dev
Validate behaviorplugins test, plugins inspect
Install from GitHubplugins add github:@owner/repository/path
Configure and approve accessplugins config, plugins setup
Discover and maintainplugins search, plugins list, plugins update, plugins remove
Publishplugins publish
Local model exampleFirst-party OpenAI Privacy Filter adapter

Wasm plugins cannot directly use WASI, files, environment variables, processes, or network sockets. Optional HTTP access needs approval and has limits for hosts, methods, request count, and data size.

See Plugins for the full workflow and Official plugins for ready examples.

Installation and distribution

You can install Pentect with PowerShell, a shell script, Homebrew, apt, AUR, Nix, or npm. The binary installers check SHA-256 checksums. They support version choice, updates, and uninstall. They also find installs managed by another package manager.

Continue with Install or the Quick start.

Pentect is open source.