Skip to content

feat(skills): manage provider skills from shared .skills#49

Merged
kimchanhyung98 merged 5 commits into
mainfrom
feature/skills-improvement
May 20, 2026
Merged

feat(skills): manage provider skills from shared .skills#49
kimchanhyung98 merged 5 commits into
mainfrom
feature/skills-improvement

Conversation

@kimchanhyung98

@kimchanhyung98 kimchanhyung98 commented May 19, 2026

Copy link
Copy Markdown
Owner

This pull request updates the project automation and configuration, primarily by adding a new skills Makefile target to streamline the management of shared skill directories for AI providers. It also removes the obsolete .claude/hooks/peon-ping/config.json configuration file.

Enhancements to project automation:

  • Added a new skills target to the Makefile that links each skill from .skills/ into both .agents/skills and .claude/skills, ensuring shared skills are available for different AI providers. This target also includes checks for the presence of skills and provides informative output. (Makefile, MakefileR64-R86)
  • Updated the dev target in the Makefile to include the new skills step, ensuring skill linking is part of the standard development setup. (Makefile, MakefileL1-R11)

Configuration cleanup:

  • Removed the .claude/hooks/peon-ping/config.json file, eliminating unused or obsolete configuration.<!--

PR Title Format

Please ensure your PR title follows the Conventional Commits format:
():

Types: feat, fix, docs, refactor, test, chore, perf, ci, build, style, revert
Example scopes (recommendations only; any lowercase scope is accepted by CI): user, product, order, payment, auth, api, database, middleware, service, controller, model, docker, deps, config, github

Examples:

  • feat(user): add social login support
  • fix(payment): resolve duplicate transaction issue
  • refactor(user): extract service layer from controllers
    -->

Summary by CodeRabbit

  • Chores
    • Removed deprecated notification and automation configuration entries.
    • Development workflow now automatically ensures and links provider skill directories during dev startup.
    • Consolidated and simplified project ignore patterns to better group AI/tooling-related artifacts and auxiliary files.

Review Change Stack

Copilot AI review requested due to automatic review settings May 19, 2026 17:41
@coderabbitai

coderabbitai Bot commented May 19, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR adds a Makefile skills target (integrated into dev) to create/manage .skills symlinks and updates .gitignore to consolidate AI tooling patterns and move miscellaneous ignores; it also removes the .claude/hooks/peon-ping/config.json content.

Changes

Development Skills System

Layer / File(s) Summary
Skills build target and dev integration
Makefile
New skills target verifies .skills exists, then for each provider directory (default .agents .claude) ensures the provider directory and symlinks provider_dir/skills -> ../.skills. dev now runs make skills, and skills added to .PHONY.
Gitignore pattern updates
.gitignore
Replaced prior AI Agent ignore entries with new tooling patterns (e.g., .aider*, .air/*, .cline/*, .devin/*, .goose/*), consolidated Claude/Codex/Gemini rules under .claude/*, .codex/*, and .gemini/* with targeted negations, and moved/added .omx and .remember into the general "etc" ignore section.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • kimchanhyung98/base#42: Adds the .claude/hooks/peon-ping/config.json file that this PR removes—direct conflict on the same configuration artifact.

Poem

🐰 A tiny hop, a symlink spun,
Makefile hums and tasks are done.
Patterns pruned in ignore's bed,
.skills and tidiness ahead.
I nibble carrots, then I code—yay, fun!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The PR title accurately describes the main change: adding a new Makefile target to manage shared skills from a .skills directory for AI providers.
Description check ✅ Passed The PR description clearly explains the changes: new skills Makefile target, updated dev target, updated .gitignore, and removed obsolete config file. It follows the structure of enhancements and cleanup sections.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/skills-improvement

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request removes a configuration file, updates .gitignore to refine Claude-related rules and include new patterns, and introduces a skills target in the Makefile to automate symlinking for AI provider skills. Feedback was provided to improve the robustness of the Makefile script by adding error handling with set -e and optimizing directory creation within the loop.

Comment thread Makefile Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds shared, provider-agnostic “skills” management by introducing a .skills/ source-of-truth and automating linking into provider-specific directories, while cleaning up obsolete Claude hook configuration.

Changes:

  • Add a skills Makefile target and run it as part of make dev.
  • Add initial shared skills under .skills/ (web-fetch, humanizer-en, humanizer-ko).
  • Simplify .gitignore rules for .claude/ and remove obsolete .claude/hooks/peon-ping/config.json.

Reviewed changes

Copilot reviewed 2 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
Makefile Adds skills target to symlink shared skills into provider directories and wires it into dev.
.skills/web-fetch/SKILL.md Adds a new shared “web-fetch” skill document.
.skills/humanizer-ko/SKILL.md Adds a new shared Korean “humanizer” skill document.
.skills/humanizer-en/SKILL.md Adds a new shared English “humanizer” skill document.
.gitignore Updates ignore/include rules for .claude/ and moves .remember ignore to a global section.
.claude/hooks/peon-ping/config.json Removes obsolete hook configuration file.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Makefile Outdated
Comment thread Makefile Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f36995008c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .gitignore
Comment thread .gitignore Outdated
Comment thread Makefile Outdated
@sonarqubecloud

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
Makefile (1)

69-73: ⚡ Quick win

Make symlink target path robust for custom provider directories.

On Line 73, the link target is hardcoded to ../.skills, which only works when provider_dir is a direct child of repo root. If SKILL_PROVIDER_DIRS contains nested paths, links resolve incorrectly.

Proposed fix
 	`@for` provider_dir in $(or $(SKILL_PROVIDER_DIRS),.agents .claude); do \
 		mkdir -p "$$provider_dir"; \
 		target="$$provider_dir/skills"; \
+		link_src="$$(realpath --relative-to="$$provider_dir" .skills 2>/dev/null || python -c 'import os,sys; print(os.path.relpath(".skills", sys.argv[1]))' "$$provider_dir")"; \
 		if [ ! -e "$$target" ] && [ ! -L "$$target" ]; then \
-			ln -s ../.skills "$$target"; \
+			ln -s "$$link_src" "$$target"; \
 		fi; \
-		if [ "$$(readlink "$$target" 2>/dev/null)" != "../.skills" ]; then \
+		if [ "$$(readlink "$$target" 2>/dev/null)" != "$$link_src" ]; then \
 			echo "[skills] failed to link $$target"; \
 			exit 1; \
 		fi; \
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Makefile` around lines 69 - 73, The symlink creation uses a hardcoded
relative target "../.skills" which breaks for nested SKILL_PROVIDER_DIRS; update
the ln command in the Makefile loop that defines provider_dir and target to
create an absolute symlink to the repo's .skills (e.g. ln -s "$(CURDIR)/.skills"
"$$target") so the link always points to the correct .skills directory
regardless of provider_dir depth.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@Makefile`:
- Around line 69-73: The symlink creation uses a hardcoded relative target
"../.skills" which breaks for nested SKILL_PROVIDER_DIRS; update the ln command
in the Makefile loop that defines provider_dir and target to create an absolute
symlink to the repo's .skills (e.g. ln -s "$(CURDIR)/.skills" "$$target") so the
link always points to the correct .skills directory regardless of provider_dir
depth.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 62ad676e-e91a-4e48-8840-0c1d40a876c8

📥 Commits

Reviewing files that changed from the base of the PR and between f369950 and 21c7edf.

📒 Files selected for processing (2)
  • .gitignore
  • Makefile

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 21c7edf6eb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread Makefile
Comment thread Makefile
Comment thread Makefile
@kimchanhyung98 kimchanhyung98 merged commit 27c019f into main May 20, 2026
13 checks passed
@kimchanhyung98 kimchanhyung98 deleted the feature/skills-improvement branch May 20, 2026 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants