[External Plugin]: shim-cli

Open Beginner friendly
#3,425 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
70/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python, shell, vscode
Domain
security, tooling

Research direction

Start by comparing the repository's existing external-plugin entries with the supplied plugin path, plugins/shim-cli. Read docs/compatibility.md at ref v1.0.1 and verify the repository, immutable commit, license, platform, and client behavior. Done means the shim-cli submission is represented consistently and its stated compatibility details are preserved.

Written by the indexing model from the issue text.

Description

external-plugin needs-review:MEDIUM ready-for-review
Plugin name

shim-cli

Short description

Finds secrets and personal data locally, in your prompts and in the tool results the agent reads, and tells you what it found. In VS Code it reports, and with enforcement on it stops a prompt or denies a tool call before it runs; a result that has already reached the model is reported, never masked. No account, no network destination, no telemetry.

GitHub repository

GetSHIM/shim-cli

Plugin path inside the repository

plugins/shim-cli

Ref to review

v1.0.1

Commit SHA to review

4b68ff19c352e5281e863a5df0d0ad1814bc0dae

Version

1.0.1

License identifier

Apache-2.0

Author name

shim Engineering

Author URL

No response

Homepage URL

No response

Keywords

privacy
security
hooks

Additional notes for reviewers

I'm one of the maintainers. What each client was measured to grant is in docs/compatibility.md at this commit; the short version:

  • VS Code (measured on 1.137.0 with Copilot Chat 0.65.0) is the client this listing serves. shim reports what it finds in prompts and tool results. With enforcement turned on in its config it can stop a prompt at UserPromptSubmit or deny a tool call at PreToolUse. It never masks in VS Code. After a tool has run it can only report: a PostToolUse block was measured and the model still read the result.
  • In VS Code a read_file result reaches the hook as an empty tool_response, so file reads are checked by path only. run_in_terminal output arrives in full.
  • GitHub Copilot CLI loads the same com.github.copilot/hooks/hooks.json, but the command exits at once when COPILOT_CLI is set, so installing this plugin in Copilot CLI inspects nothing. Copilot CLI users get the hook from the PyPI package with shim install copilot. The Copilot app has not been tested.
  • If no Python 3.9+ is found or the hook fails, the prompt or tool call goes through uninspected. Detection is regex plus checksums, so expect false positives and misses.
  • macOS and Linux are the supported platforms; the hook commands run through sh.

v1.0.1 is an annotated tag (tag object c83249766a307c78a5a2e2533b95fa9598ceb371); the SHA above is the commit it points to.

Submission checklist
  • The plugin lives in a public GitHub repository.
  • The ref and/or sha I provided is immutable (release tag and/or full 40-character commit SHA), not a branch.
  • This submission follows this repository's contribution, security, and responsible AI policies.
  • This plugin is not already listed in the Awesome Copilot marketplace.
Dominant language
JavaScript
Stars
39.2k
Forks
5k
Avg merge
1d 17h
Merged PRs (30d)
114

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from github/awesome-copilot

All issues in github/awesome-copilot

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.