Skip to content
Back to skills

Ll Commit

ASecurity

Create git commits with user approval and no assistant attribution

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 6, 2026
ai-agentsrustgobashgit

Security analysis

A100/100

Scanned October 6, 2026

npx -y skills add BrennonTWilliams/little-loops --skill ll-commit --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ll Commit?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ll Commit
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/brennontwilliams-ll-commit/badge)](https://www.skillsdirectory.com/skills/brennontwilliams-ll-commit)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ll-commit
description: Create git commits with user approval and no assistant attribution
allowed-tools:
  - Bash(git:*)
---

# Commit Changes

You are tasked with creating git commits for the changes made during this session.

### 0. Parse Flags

```bash
AUTO_MODE=false

# Auto-enable in automation contexts
if [[ "$ARGUMENTS" == *"--dangerously-skip-permissions"* ]] || [[ -n "${LL_NON_INTERACTIVE:-}" ]] || [[ -n "${DANGEROUSLY_SKIP_PERMISSIONS:-}" ]]; then
    AUTO_MODE=true
fi

if [[ "$ARGUMENTS" == *"--auto"* ]]; then AUTO_MODE=true; fi
```

## Process:

1. **Think about what changed:**
   - Review the conversation history and understand what was accomplished
   - Run `git status` to see current changes
   - Run `git diff` to understand the modifications
   - Consider whether changes should be one commit or multiple logical commits

1.5. **Check for files that should be ignored:**
   - After running `git status`, examine the untracked files
   - Import `suggest_gitignore_patterns` and `add_patterns_to_gitignore` from `little_loops.git_operations`
   - Call `suggest_gitignore_patterns()` to analyze untracked files
   - If suggestions are found (`result.has_suggestions` is True):
     a. Present findings grouped by category:
        ```
        Found {N} untracked file(s) that should typically be ignored:

        {Category}:
        - Pattern: {pattern}
        - Files: {comma-separated list of matched files}
        - Description: {description}
        ```
     b. **Auto mode bypass**: If `AUTO_MODE` is true, skip the `AskUserQuestion` prompt and skip gitignore updates entirely. Proceed directly to step 2.
     c. Use `AskUserQuestion` tool to get user approval (interactive mode only):
        ```yaml
        questions:
          - header: "Gitignore Suggestions"
            question: "Found {TOTAL_FILES} untracked file(s) that should typically be ignored. Add these patterns to .gitignore?"
            options:
              - label: "Yes, add all suggested patterns"
                description: "Add {PATTERN_COUNT} pattern(s) to .gitignore: {PATTERNS_LIST}"
              - label: "No, skip gitignore updates"
                description: "Proceed with commit without updating .gitignore"
            multiSelect: false
        ```
     d. Handle user response:
        - **"Yes, add all"**: Extract pattern strings from `result.patterns`, call `add_patterns_to_gitignore()`, show confirmation
        - **"No, skip"**: Continue with commit workflow
     e. If patterns were added, run `git status` again to show updated state

2. **Plan your commit(s):**
   - Identify which files belong together
   - Draft clear, descriptive commit messages
   - Use imperative mood in commit messages
   - Focus on why the changes were made, not just what

3. **Present your plan to the user:**
   - List the files you plan to add for each commit
   - Show the commit message(s) you'll use
   - Inform the user: "Creating [N] commit(s) with these changes..."

4. **Execute:**
   - Use `git add` with specific files (never use `-A` or `.`)
   - Create commits with your planned messages
   - Show the result with `git log --oneline -n [number]`

## Important:
- **NEVER add co-author information or assistant attribution — for ANY assistant**
  (Claude, Qwen, Gemini, or any other agent)
- Commits should be authored solely by the user
- Do not include any "Generated with Claude" / "Generated with Qwen" or similar messages
- Do not add "Co-Authored-By" / "Co-authored-by" trailer lines of any kind, including
  `Co-authored-by: Claude <noreply@anthropic.com>` and
  `Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>`
- Do NOT mimic attribution trailers seen in `git log` history — prior commits may
  contain them, but they are leakage, not a convention to copy
- Write commit messages as if the user wrote them

## Remember:
- You have the full context of what was done in this session
- Group related changes together
- Keep commits focused and atomic when possible
- The user trusts your judgment - they asked you to commit

---

## Examples

```bash
# Commit changes from current session
/ll:commit

# Non-interactive commit from automation context
/ll:commit --auto
```

---

## Integration

This command creates commits for work done in the current session.

Works well with:
- `/ll:check-code` - Run before committing to ensure code quality
- `/ll:run-tests` - Verify tests pass before committing
- `/ll:open-pr` - After committing, open a pull request
- `/ll:describe-pr` - After committing, generate PR description

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…