LookupMark Git Sync

v1.2.0

Manage whitelisted git repositories from chat. Status, log, diff, pull, push with security controls — only approved repos, write commands need confirmation....

0· 29·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Pending
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description (manage whitelisted git repos) matches the included code and SKILL.md: a small Python CLI that operates on a configurable whitelist (~/.config/git-sync/repos.json or built-in defaults). It declares git as a dependency, which is appropriate.
Instruction Scope
SKILL.md instructs running the included script for specific read/write operations. Read-only actions (status, log, diff, branch, fetch) are implemented and safe. Write actions require --confirm. Minor inconsistency: the declared WRITE_COMMANDS/READ_COMMANDS include commands like 'checkout', 'reset', 'merge', 'rebase' but the script only implements handlers for status, log, diff, branch, fetch, pull, push and 'all'. These extra listed commands are not actually executed by the script (argparse accepts them but there is no handler), which is an implementation/documentation mismatch but not a direct security risk.
Install Mechanism
No install spec is present (instruction-only plus an included script). This is low-risk. The only external dependency is the git CLI, which the SKILL.md correctly documents.
Credentials
The skill requests no environment variables or credentials. It will invoke the system git client which may use the user's existing SSH keys or credential helpers (expected and proportional). The script does read ~/.config/git-sync/repos.json (documented) and the user's filesystem for repo paths — this is consistent with its purpose.
Persistence & Privilege
The skill is not always-on and does not modify other skills or system configuration. It only reads a per-user config file and runs git commands; no elevated persistence or cross-skill config changes were found.
Assessment
This skill appears to do what it says: a small local helper that interacts with a whitelist of local git repositories. Before installing or running it, consider: 1) Review ~/.config/git-sync/repos.json (if present) to confirm only intended paths are allowed. 2) The script uses your system git client — pushes/pulls will use whatever SSH keys or credential helpers are configured on your machine, so ensure those credentials are appropriate. 3) Test read-only commands (status, log, diff, fetch) first. 4) Note the minor doc/implementation mismatch: some commands are listed but not implemented; this is not a security red flag but you should review the script if you plan to extend it or rely on those extra commands. 5) Ensure the config file and repository directories have appropriate filesystem permissions so other local users can't modify them.

Like a lobster shell, security has layers — review code before you run it.

latestvk97andkbtp926kw4zy87rzw1zh847ahg

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Git Sync

Secure git repository management for whitelisted repos.

Usage

# Status of all repos
python3 scripts/git_ctrl.py all

# Status of specific repo
python3 scripts/git_ctrl.py status thesis
python3 scripts/git_ctrl.py status polito

# Recent commits
python3 scripts/git_ctrl.py log thesis -n 20

# Unstaged changes
python3 scripts/git_ctrl.py diff thesis

# Branches
python3 scripts/git_ctrl.py branch thesis

# Fetch (read-only, safe)
python3 scripts/git_ctrl.py fetch thesis

# Pull (requires confirmation)
python3 scripts/git_ctrl.py pull thesis --confirm

# Push (requires confirmation)
python3 scripts/git_ctrl.py push thesis --confirm

Allowed Repos

NamePath
thesis~/Documenti/github/thesis
polito~/Documenti/github/polito

Security

  • Whitelist: Only thesis and polito repos are accessible
  • Read-only by default: status, log, diff, branch, fetch run freely
  • Write requires --confirm: pull, push, merge, checkout need explicit confirmation
  • Blocked commands: clean, reset --hard, push --force are never allowed
  • No secrets: Output does not expose git credentials or tokens

Files

2 total
Select a file
Select a file to preview.

Comments

Loading comments…