UNPKG

git-tweezers

Version:

Advanced git staging tool with hunk and line-level control

250 lines 7.54 kB
{ "commands": { "hunk": { "aliases": [], "args": { "selectors": { "description": "File and hunk selectors (e.g., file.ts:1 or file.ts 1)", "name": "selectors", "required": true } }, "description": "Stage specific hunks from a file by their numbers", "examples": [ "<%= config.bin %> <%= command.id %> src/index.ts 2", "<%= config.bin %> <%= command.id %> src/index.ts:2 # Alternative syntax", "<%= config.bin %> <%= command.id %> -p src/index.ts 1 # Use precise mode", "<%= config.bin %> <%= command.id %> src/index.ts 1,3,5 # Stage multiple hunks", "<%= config.bin %> <%= command.id %> src/file1.ts:1 src/file2.ts:3 # Multiple files" ], "flags": { "precise": { "char": "p", "description": "Use precise mode (U0 context) for finer control", "name": "precise", "allowNo": false, "type": "boolean" }, "dry-run": { "char": "d", "description": "Show what would be staged without applying changes", "name": "dry-run", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "hunk", "pluginAlias": "git-tweezers", "pluginName": "git-tweezers", "pluginType": "core", "strict": false, "enableJsonFlag": false, "isESM": true, "relativePath": [ "lib", "commands", "hunk.js" ] }, "install": { "aliases": [], "args": {}, "description": "Install smart-commit template for Claude Code custom commands", "examples": [ "<%= config.bin %> <%= command.id %>", "<%= config.bin %> <%= command.id %> --global", "<%= config.bin %> <%= command.id %> --force" ], "flags": { "global": { "char": "g", "description": "Install in global ~/.claude/commands directory", "name": "global", "allowNo": false, "type": "boolean" }, "force": { "char": "f", "description": "Overwrite existing file without prompting", "name": "force", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "install", "pluginAlias": "git-tweezers", "pluginName": "git-tweezers", "pluginType": "core", "strict": true, "enableJsonFlag": false, "isESM": true, "relativePath": [ "lib", "commands", "install.js" ] }, "lines": { "aliases": [], "args": { "file": { "description": "File to stage lines from", "name": "file", "required": true }, "range": { "description": "Line range to stage (e.g., 10-15, 10, or 10-15,20,25-30)", "name": "range", "required": true } }, "description": "Stage specific lines or line ranges from a file", "examples": [ "<%= config.bin %> <%= command.id %> src/index.ts 10-15", "<%= config.bin %> <%= command.id %> src/index.ts 25", "<%= config.bin %> <%= command.id %> src/index.ts 10-15,20,25-30 # Multiple ranges" ], "flags": { "dry-run": { "char": "d", "description": "Show what would be staged without applying changes", "name": "dry-run", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "lines", "pluginAlias": "git-tweezers", "pluginName": "git-tweezers", "pluginType": "core", "strict": true, "enableJsonFlag": false, "isESM": true, "relativePath": [ "lib", "commands", "lines.js" ] }, "list": { "aliases": [], "args": { "files": { "description": "Files to list hunks from (omit to show all)", "name": "files", "required": false } }, "description": "List all hunks in a file with their line numbers", "examples": [ "<%= config.bin %> <%= command.id %> # List all changed files", "<%= config.bin %> <%= command.id %> src/index.ts # List hunks in specific file", "<%= config.bin %> <%= command.id %> src/*.ts # List hunks in multiple files", "<%= config.bin %> <%= command.id %> -p src/index.ts # Use precise mode for smaller hunks", "<%= config.bin %> <%= command.id %> --preview # Show diff preview for each hunk" ], "flags": { "precise": { "char": "p", "description": "Use precise mode (U0 context) for finer control", "name": "precise", "allowNo": false, "type": "boolean" }, "preview": { "description": "Show full diff preview for each hunk (legacy flag, now default behavior)", "hidden": true, "name": "preview", "allowNo": false, "type": "boolean" }, "inline": { "char": "i", "description": "Show inline summary with stats and first changed line", "name": "inline", "allowNo": false, "type": "boolean" }, "oneline": { "char": "o", "description": "Show only hunk headers without preview (like git log --oneline)", "name": "oneline", "allowNo": false, "type": "boolean" }, "context": { "char": "c", "description": "Number of context lines to show in preview", "name": "context", "default": 3, "hasDynamicHelp": false, "multiple": false, "type": "option" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "list", "pluginAlias": "git-tweezers", "pluginName": "git-tweezers", "pluginType": "core", "strict": false, "enableJsonFlag": false, "isESM": true, "relativePath": [ "lib", "commands", "list.js" ] }, "undo": { "aliases": [], "args": {}, "description": "Undo the last staging operation", "examples": [ "<%= config.bin %> <%= command.id %> # Undo the most recent staging", "<%= config.bin %> <%= command.id %> --step 2 # Undo the 2nd most recent staging", "<%= config.bin %> <%= command.id %> --list # List available undo history" ], "flags": { "step": { "char": "s", "description": "Which staging operation to undo (0 = most recent)", "name": "step", "default": 0, "hasDynamicHelp": false, "multiple": false, "type": "option" }, "list": { "char": "l", "description": "List available undo history", "name": "list", "allowNo": false, "type": "boolean" } }, "hasDynamicHelp": false, "hiddenAliases": [], "id": "undo", "pluginAlias": "git-tweezers", "pluginName": "git-tweezers", "pluginType": "core", "strict": true, "enableJsonFlag": false, "isESM": true, "relativePath": [ "lib", "commands", "undo.js" ] } }, "version": "0.1.14" }