Installation

Poltergeist is a portable Windows snippet manager: one executable (plus optional assets/ beside it), global hotkey, nested picker at the cursor, and injection modes tuned for both everyday apps and stubborn terminals.

Prebuilt binaries are published as CI artifacts when the pipeline succeeds - see the repository’s Releases page for the rolling nightly tag (user and admin zip variants). From source, you build with Cargo on Windows 10 or 11.

Requirements

  • Windows 10 or 11 (x64)
  • Rust toolchain matching the workspace (rust-version in root Cargo.toml; currently 1.77+)
  • Visual Studio Build Tools with the C++ workload if the linker is missing on your machine

Setup from source

Install Rust via rustup if you have not already.

From the repository root:
cargo run -p poltergeist-app --bin poltergeist

Release binary (user edition):
cargo build -p poltergeist-app --release

Output:
target/release/poltergeist.exe

Release binary (admin edition - runtime always Admin):
cargo build -p poltergeist-app --release --features admin-edition

The output path is still target/release/poltergeist.exe, but the feature locks edition behaviour.

Portable layout

Keep these next to the executable (same folder):

| Path | Role |
| --- | --- |
| `poltergeist.json` | Primary configuration |
| `poltergeist-defaults.json` | Optional bootstrap defaults |
| `team_cache/` | Cached team pack and database files from share/HTTP |
| `assets/` | Optional packaged assets when distributed in zips |

Edition resolution (default user build)

Resolved in order:

  1. Environment variable POLTERGEIST_EDITION=admin or user
  2. _admin.flag file beside poltergeist.exe
  3. Default: user

Admin-edition builds ignore env and flag.

Contributor checks

cargo fmt --all
cargo check --workspace
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace

Documentation

| Document | Contents |
| --- | --- |
| `README.md` | Features, workspace layout, team share, troubleshooting pointers |
| `TUTORIAL.md` | Token syntax, filters, injection guidance, examples |

Localization: the UI supports English, German, Spanish, and French.