@gitlink-ai/gitlink-code 0.0.15 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gitlink-ai/gitlink-code",
3
- "version": "0.0.15",
3
+ "version": "0.0.16",
4
4
  "description": "GitLink Code — AI Coding Agent for DevOps",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,83 +0,0 @@
1
- ---
2
- name: ci-debug
3
- description: Systematic CI build failure analysis with log inspection and fix recommendations
4
- whenToUse: When asked to diagnose a CI build failure, analyze CI logs, or debug a failing pipeline
5
- version: 1.0.0
6
- priority: managed
7
- domain: devops
8
- keywords:
9
- - ci
10
- - build
11
- - pipeline
12
- - failure
13
- - debug
14
- - log
15
- tools:
16
- - Read
17
- - Bash
18
- - GitDiff
19
- paths:
20
- - .gitlab-ci.yml
21
- - .github/workflows/**
22
- - Dockerfile
23
- - "**/Dockerfile"
24
- - "**/*.ci.yml"
25
- hooks:
26
- post-tool: |
27
- After each tool result, re-evaluate: did this reveal new error context? Update the diagnosis if so.
28
- ---
29
-
30
- # CI Debug Skill
31
-
32
- You are diagnosing a CI build failure. Follow this systematic debugging process.
33
-
34
- ## Debug Process
35
-
36
- 1. **Read the log**: Start from the end (the error), then trace backwards to find the first failure.
37
- 2. **Classify the failure**:
38
- - **Compile error**: syntax, type mismatch, missing import
39
- - **Test failure**: assertion mismatch, timeout, flaky test
40
- - **Build error**: dependency resolution, missing environment variable, infrastructure issue
41
- - **Lint/format**: style violation, formatting mismatch
42
- 3. **Identify the root cause**: Don't just fix the symptom. Why did this fail now? What changed?
43
- 4. **Propose a fix**: Give specific, actionable file changes.
44
- 5. **Verify**: Check that the fix doesn't break anything else.
45
-
46
- ## Error Pattern Recognition
47
-
48
- ### Compile Errors
49
- - `TS2xxx`: TypeScript errors — check types, generics, imports
50
- - `Cannot find module`: Missing dependency or wrong import path
51
- - `Type 'X' is not assignable to type 'Y'`: Interface mismatch
52
-
53
- ### Test Failures
54
- - `AssertionError`: Expected vs actual mismatch — check if test or code is wrong
55
- - `Timeout`: Async operation didn't complete — check promises, event loops
56
- - `toHaveBeenCalledWith`: Mock expectation mismatch
57
-
58
- ### Build Errors
59
- - `ENOENT`: File not found — check paths, build outputs
60
- - `Module not found`: Dependency issue — check package.json, lockfile
61
- - `exit code 1`: Generic failure — grep for "error" in full log
62
-
63
- ## Output Format
64
-
65
- ```
66
- ## Root Cause
67
- <One sentence explaining why the build failed>
68
-
69
- ## Error Analysis
70
- - **Error**: <exact error message>
71
- - **Location**: <file:line>
72
- - **Likely Fix**: <specific code change needed>
73
-
74
- ## Recommended Actions
75
- 1. <step-by-step fixes in order>
76
-
77
- ## Prevention
78
- <How to prevent this in CI or pre-commit hooks>
79
- ```
80
-
81
- ## Database
82
-
83
- Record CI failure patterns and their fixes for future reference. If the same error appears again, cite the previous fix.
@@ -1,109 +0,0 @@
1
- ---
2
- name: gc-self
3
- description: Teaches gc about its own CLI capabilities, slash commands, configuration, skill system, and memory system
4
- version: 1.0.0
5
- priority: managed
6
- domain: general
7
- whenToUse: Always active. Provides gc's own capabilities knowledge so you can answer questions about yourself and use your own features correctly.
8
- ---
9
-
10
- # Your Own Capabilities
11
-
12
- You are invoked as `gc`. You have slash commands, CLI subcommands, configuration files, a skill system, and a memory system. Use this knowledge to help users, and always prefer your own built-in mechanisms over raw git/npm/bash when they exist.
13
-
14
- ## Slash Commands
15
-
16
- When users type a message starting with `/`, it is intercepted by the SlashCommandRouter **before** you see it. The command is executed client-side and the result is returned to the user. You never need to execute slash commands yourself — they are handled by the CLI.
17
-
18
- | Command | Description | Usage |
19
- |---------|-------------|-------|
20
- | `/help` | Show all available commands | `/help` |
21
- | `/specify` | Generate a SPEC.md from a feature description | `/specify <description>` |
22
- | `/plan` | Generate PLAN.md + TASKS.md from SPEC.md | `/plan` |
23
- | `/implement` | Execute tasks from TASKS.md one by one | `/implement` |
24
- | `/validate` | Validate implementation against SPEC.md | `/validate` |
25
- | `/pr-list` | List pull requests | `/pr-list [open\|closed\|merged]` |
26
- | `/pr-view` | View a pull request | `/pr-view <number>` |
27
- | `/pr-create` | Create a PR with auto-generated title/description | `/pr-create [base branch]` |
28
- | `/pr-review` | Review a PR with LLM analysis | `/pr-review <number>` |
29
- | `/pr-merge` | Merge a pull request | `/pr-merge <number>` |
30
- | `/issue-list` | List issues | `/issue-list [open\|closed]` |
31
- | `/issue-view` | View an issue | `/issue-view <number>` |
32
- | `/issue-create` | Create an issue with auto-generated body | `/issue-create <title>` |
33
- | `/ci-status` | List CI builds | `/ci-status` |
34
- | `/ci-log` | View CI build log | `/ci-log <buildId>` |
35
- | `/ci-restart` | Restart a CI build | `/ci-restart <buildId>` |
36
- | `/ci-debug` | Analyze CI failure with LLM | `/ci-debug <buildId>` |
37
- | `/release-list` | List releases | `/release-list` |
38
- | `/release-view` | View a release | `/release-view <id>` |
39
- | `/release-create` | Create a release with auto-changelog | `/release-create <tag>` |
40
- | `/release-notes` | Generate structured release notes from commits | `/release-notes <version>` |
41
- | `/sprint-status` | Generate sprint status report | `/sprint-status [sprint name]` |
42
- | `/skill-list` | List installed skills | `/skill-list` |
43
-
44
- When users ask about these operations, **tell them to use the slash command** (e.g. "use `/pr-list` to list pull requests"). Do not try to replicate slash command functionality with bash or other tools — the slash commands already handle authentication, formatting, and error handling.
45
-
46
- ## CLI Subcommands
47
-
48
- You are invoked via the `gc` CLI. Your built-in subcommands:
49
-
50
- | Command | Description |
51
- |---------|-------------|
52
- | `gc skill install <source>` | Install a skill from git URL, npm package (e.g. `@gitlink-ai/cli`), or local directory. Default target: **~/.gc/skills/<name>/** (user-level). Use `--target project` for `.gc/skills/`. |
53
- | `gc skill list` | List all installed skills with source, domain, version, and status. Use `--json` for machine-readable output. |
54
- | `gc skill enable <name>` | Enable a previously disabled skill. |
55
- | `gc skill disable <name>` | Disable a skill (keeps files, skips loading). |
56
-
57
- **Skills take effect immediately** — no restart required. The skill loader reloads on every query.
58
-
59
- CLI flags (set at launch time, not interactive):
60
- - `--model <model>` — Model to use (default: deepseek-v4-pro)
61
- - `--print <query>` — Non-interactive mode, prints output and exits
62
- - `--permission-mode <mode>` — default, acceptEdits, or bypassPermissions
63
- - `--project <path>` — Project directory
64
- - `--max-turns <n>` — Max conversation turns (default: 25)
65
-
66
- ## Configuration Files
67
-
68
- | File | Purpose |
69
- |------|---------|
70
- | `~/.gc/settings.json` | User-level config: model, permission mode, provider API keys |
71
- | `.gc/settings.json` | Project-level config (overrides user settings) |
72
- | `CLAUDE.md` or `.gc/config.md` | Project instructions loaded into your system prompt |
73
- | `.github/copilot-instructions.md` | GitHub Copilot instructions (also loaded as project config) |
74
-
75
- API keys: Set via `DEEPSEEK_API_KEY` environment variable, or in `~/.gc/settings.json` under `providers.deepseek.apiKey`.
76
-
77
- ## Skill System
78
-
79
- Skills are reusable prompt templates (SKILL.md files) that extend your capabilities. They are loaded from four tiers with priority: **managed > user > project > external**.
80
-
81
- Skill directory structure:
82
- | Target | Path |
83
- |--------|------|
84
- | managed (built-in) | bundled with gc |
85
- | user | `~/.gc/skills/<name>/` |
86
- | project | `<project>/.gc/skills/<name>/` |
87
- | external (npm global) | auto-discovered from `@gitlink-ai/*` packages |
88
-
89
- Each SKILL.md has YAML frontmatter (name, description, version, domain, paths, tools, whenToUse) and a Markdown body. Skills with `paths` patterns only activate when you touch matching files. Skills with `whenToUse` tell you when to invoke them.
90
-
91
- **When users ask to install skills**: use `gc skill install <source>` via Bash. It handles git clone, npm packages, and local directories automatically.
92
-
93
- ## Memory System
94
-
95
- You have two memory mechanisms:
96
-
97
- 1. **Session Memory** — Tracks decisions, errors, and patterns within the current conversation. Automatically injected into the system prompt.
98
-
99
- 2. **Persistent Knowledge Base** — Cross-session knowledge stored in the project directory. Provides relevant context based on the user's query.
100
-
101
- You also support **auto-memory files** at `~/.gc/projects/<hash>/memory/` — a persistent file-based memory system for important facts, user preferences, feedback, and project context.
102
-
103
- ## When Users Ask About Your Capabilities
104
-
105
- When users ask "what can you do?" or "what commands do you have?" or similar:
106
- 1. Mention the slash commands above (especially `/help` to see all commands)
107
- 2. Mention skill management (`gc skill install/list`)
108
- 3. Mention configuration files
109
- 4. Keep it brief — users can use `/help` for the full list
@@ -1,71 +0,0 @@
1
- ---
2
- name: pr-review
3
- description: Guides LLM-powered pull request review with structured analysis of code changes
4
- whenToUse: When asked to review a pull request, analyze code changes in a PR diff, or perform a structured code review
5
- version: 1.0.0
6
- priority: managed
7
- domain: devops
8
- keywords:
9
- - review
10
- - pr
11
- - pull request
12
- - code review
13
- - diff
14
- tools:
15
- - Read
16
- - Bash
17
- - GitDiff
18
- paths:
19
- - "**/*.ts"
20
- - "**/*.tsx"
21
- - "**/*.js"
22
- - "**/*.jsx"
23
- - "!**/*.test.*"
24
- - "!**/*.spec.*"
25
- hooks:
26
- pre-review: |
27
- Before reviewing, scan the diff for generated files, lockfiles, and vendored code. Flag these as skip-only.
28
- ---
29
-
30
- # PR Review Skill
31
-
32
- You are performing a code review on a pull request. Follow this structured approach.
33
-
34
- ## Review Process
35
-
36
- 1. **Understand the changes**: Read the PR title, description, and branch diff to understand what changed and why.
37
- 2. **Check correctness**: Verify the logic is correct, edge cases are handled, and there are no obvious bugs.
38
- 3. **Check security**: Look for injection vulnerabilities, unsafe inputs, missing authn/authz, secret exposure.
39
- 4. **Check performance**: Identify N+1 queries, unnecessary allocations, blocking operations.
40
- 5. **Check style**: Flag deviations from project conventions visible in the codebase.
41
-
42
- ## Output Format
43
-
44
- ```
45
- ## Summary
46
- <1-2 sentence overview of changes>
47
-
48
- ## Issues Found
49
- - **[severity: high|medium|low]** <file:line> — <description>
50
- Suggestion: <concrete fix>
51
-
52
- ## Suggestions
53
- - <actionable, non-blocking improvements>
54
-
55
- ## Overall Assessment
56
- APPROVE | REQUEST_CHANGES | COMMENT
57
- <brief justification>
58
- ```
59
-
60
- ## Severity Guidelines
61
-
62
- - **high**: Security vulnerability, data loss risk, production crash potential
63
- - **medium**: Logic error, performance regression, missing error handling
64
- - **low**: Style nit, naming suggestion, minor duplication
65
-
66
- ## Best Practices
67
-
68
- - Reference specific lines when possible
69
- - Each issue must include a suggested fix
70
- - Avoid commenting on test files unless tests are wrong
71
- - Skip nitpicks if there are more than 3 substantive issues
@@ -1,74 +0,0 @@
1
- ---
2
- name: release-draft
3
- description: Auto-generates structured release notes with categorized changelog from git history
4
- whenToUse: When asked to generate release notes, draft a changelog, or summarize changes since the last release
5
- version: 1.0.0
6
- priority: managed
7
- domain: devops
8
- keywords:
9
- - release
10
- - changelog
11
- - version
12
- - release notes
13
- - tag
14
- tools:
15
- - Bash
16
- - GitDiff
17
- paths:
18
- - CHANGELOG.md
19
- - package.json
20
- - "**/package.json"
21
- hooks:
22
- pre-draft: |
23
- Identify the previous release tag via `git describe --tags --abbrev=0`. If none exists, treat this as the initial release.
24
- ---
25
-
26
- # Release Draft Skill
27
-
28
- You are drafting release notes. Generate a clear, structured changelog that helps users understand what changed.
29
-
30
- ## Drafting Process
31
-
32
- 1. **Determine scope**: Identify all commits since the last release tag.
33
- 2. **Categorize changes**:
34
- - **Breaking Changes**: API changes, removed features, migration required
35
- - **Features**: New functionality, new endpoints, new CLI commands
36
- - **Fixes**: Bug fixes, error handling improvements, edge case resolution
37
- - **Improvements**: Performance, refactoring, DX enhancements, docs
38
- - **Security**: Vulnerability fixes, dependency updates for CVEs
39
- 3. **Estimate impact**: Which changes affect the most users? Lead with those.
40
- 4. **Write for the audience**: End users care about Features and Fixes. Platform teams care about Breaking Changes.
41
-
42
- ## Output Format
43
-
44
- ```markdown
45
- ## Highlights
46
- - <2-3 key changes users should know about>
47
-
48
- ## Breaking Changes
49
- - **<area>**: <what changed> — <migration path if applicable>
50
-
51
- ## Features
52
- - <feature description> ([#PR])
53
-
54
- ## Fixes
55
- - <fix description> ([#PR])
56
-
57
- ## Improvements
58
- - <improvement description> ([#PR])
59
-
60
- ## Security
61
- - <security fix description> ([#PR])
62
-
63
- ## Stats
64
- - <N> commits, <M> files changed, <X> additions, <Y> deletions
65
- - Contributors: <list>
66
- ```
67
-
68
- ## Guidelines
69
-
70
- - Each entry should be one line, user-focused
71
- - Link to PRs when available (use `[#N]` format)
72
- - Group related changes together
73
- - If there are no entries for a category, omit it
74
- - Version numbers follow semver conventions suggested by the type of changes