Commit fa3d6032c594
Changed files (177)
dots
agents
skills
backlog-triage
workflows
code-review
create-skill
workflows
doc-coauthoring
docker
docs-drift-review
emacs-lisp
gh-fix-ci
gh-review-bot-comments
github
github-triage
workflows
golang
google-workspace
handoff
scripts
homelab
jira
journal
kubernetes
nix
nixpkgs
org
tools
pi-share
python
tools
workflows
quarterly-report
slack
tools
tekton
todos
tools
workflows
config
claude
skills
dots/config/claude/skills/backlog-triage/workflows/Analyze.md → dots/agents/skills/backlog-triage/workflows/Analyze.md
File renamed without changes
dots/config/claude/skills/backlog-triage/workflows/Fetch.md → dots/agents/skills/backlog-triage/workflows/Fetch.md
File renamed without changes
dots/config/claude/skills/backlog-triage/workflows/FullPipeline.md → dots/agents/skills/backlog-triage/workflows/FullPipeline.md
File renamed without changes
dots/config/claude/skills/backlog-triage/workflows/Report.md → dots/agents/skills/backlog-triage/workflows/Report.md
File renamed without changes
dots/config/claude/skills/backlog-triage/SKILL.md → dots/agents/skills/backlog-triage/SKILL.md
File renamed without changes
dots/config/claude/skills/code-review/workflows/FocusedReview.md → dots/agents/skills/code-review/workflows/FocusedReview.md
File renamed without changes
dots/config/claude/skills/code-review/workflows/FullReview.md → dots/agents/skills/code-review/workflows/FullReview.md
File renamed without changes
dots/config/claude/skills/code-review/rubric.md → dots/agents/skills/code-review/rubric.md
File renamed without changes
dots/config/claude/skills/code-review/SKILL.md → dots/agents/skills/code-review/SKILL.md
File renamed without changes
dots/config/claude/skills/core/CONSTITUTION.md → dots/agents/skills/core/CONSTITUTION.md
File renamed without changes
dots/config/claude/skills/core/history-system.md → dots/agents/skills/core/history-system.md
File renamed without changes
dots/config/claude/skills/core/hook-system.md → dots/agents/skills/core/hook-system.md
File renamed without changes
dots/config/claude/skills/core/prompting.md → dots/agents/skills/core/prompting.md
File renamed without changes
dots/config/claude/skills/core/SKILL.md → dots/agents/skills/core/SKILL.md
File renamed without changes
dots/config/claude/skills/core/SkillSystem.md → dots/agents/skills/core/SkillSystem.md
File renamed without changes
dots/config/claude/skills/create-skill/workflows/CreateSkill.md → dots/agents/skills/create-skill/workflows/CreateSkill.md
File renamed without changes
dots/config/claude/skills/create-skill/workflows/ValidateSkill.md → dots/agents/skills/create-skill/workflows/ValidateSkill.md
File renamed without changes
dots/config/claude/skills/create-skill/SKILL.md → dots/agents/skills/create-skill/SKILL.md
File renamed without changes
dots/config/claude/skills/docker/tools/detect-runtime.sh → dots/agents/skills/docker/tools/detect-runtime.sh
File renamed without changes
dots/config/claude/skills/docker/workflows/Build.md → dots/agents/skills/docker/workflows/Build.md
File renamed without changes
dots/config/claude/skills/docker/workflows/Infrastructure.md → dots/agents/skills/docker/workflows/Infrastructure.md
File renamed without changes
dots/config/claude/skills/docker/workflows/Maintain.md → dots/agents/skills/docker/workflows/Maintain.md
File renamed without changes
dots/config/claude/skills/docker/workflows/Run.md → dots/agents/skills/docker/workflows/Run.md
File renamed without changes
dots/config/claude/skills/docker/SKILL.md → dots/agents/skills/docker/SKILL.md
File renamed without changes
dots/config/claude/skills/docs-drift-review/scripts/collect-code-files.sh → dots/agents/skills/docs-drift-review/scripts/collect-code-files.sh
File renamed without changes
dots/config/claude/skills/docs-drift-review/scripts/collect-doc-files.sh → dots/agents/skills/docs-drift-review/scripts/collect-doc-files.sh
File renamed without changes
dots/config/claude/skills/docs-drift-review/templates/report-template.md → dots/agents/skills/docs-drift-review/templates/report-template.md
File renamed without changes
dots/config/claude/skills/docs-drift-review/SKILL.md → dots/agents/skills/docs-drift-review/SKILL.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/workflows/Configure.md → dots/agents/skills/emacs-lisp/workflows/Configure.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/workflows/Debug.md → dots/agents/skills/emacs-lisp/workflows/Debug.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/workflows/Lint.md → dots/agents/skills/emacs-lisp/workflows/Lint.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/workflows/Script.md → dots/agents/skills/emacs-lisp/workflows/Script.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/workflows/Test.md → dots/agents/skills/emacs-lisp/workflows/Test.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/Advanced.md → dots/agents/skills/emacs-lisp/Advanced.md
File renamed without changes
dots/config/claude/skills/emacs-lisp/SKILL.md → dots/agents/skills/emacs-lisp/SKILL.md
File renamed without changes
dots/config/claude/skills/email/reference/Alternatives.md → dots/agents/skills/email/reference/Alternatives.md
File renamed without changes
dots/config/claude/skills/email/reference/DatabaseLocking.md → dots/agents/skills/email/reference/DatabaseLocking.md
File renamed without changes
dots/config/claude/skills/email/tools/archive-emails.sh → dots/agents/skills/email/tools/archive-emails.sh
File renamed without changes
dots/config/claude/skills/email/tools/check-mu-lock.sh → dots/agents/skills/email/tools/check-mu-lock.sh
File renamed without changes
dots/config/claude/skills/email/tools/extract-attachments.sh → dots/agents/skills/email/tools/extract-attachments.sh
File renamed without changes
dots/config/claude/skills/email/tools/review-junk-bin.sh → dots/agents/skills/email/tools/review-junk-bin.sh
File renamed without changes
dots/config/claude/skills/email/tools/smart-reindex.sh → dots/agents/skills/email/tools/smart-reindex.sh
File renamed without changes
dots/config/claude/skills/email/workflows/Analyze.md → dots/agents/skills/email/workflows/Analyze.md
File renamed without changes
dots/config/claude/skills/email/workflows/Extract.md → dots/agents/skills/email/workflows/Extract.md
File renamed without changes
dots/config/claude/skills/email/workflows/Search.md → dots/agents/skills/email/workflows/Search.md
File renamed without changes
dots/config/claude/skills/email/workflows/View.md → dots/agents/skills/email/workflows/View.md
File renamed without changes
dots/config/claude/skills/email/SKILL.md → dots/agents/skills/email/SKILL.md
File renamed without changes
dots/config/claude/skills/gh-fix-ci/scripts/inspect_pr_checks.py → dots/agents/skills/gh-fix-ci/scripts/inspect_pr_checks.py
File renamed without changes
dots/config/claude/skills/gh-fix-ci/workflows/FixCI.md → dots/agents/skills/gh-fix-ci/workflows/FixCI.md
File renamed without changes
dots/config/claude/skills/gh-fix-ci/SKILL.md → dots/agents/skills/gh-fix-ci/SKILL.md
File renamed without changes
dots/config/claude/skills/gh-review-bot-comments/scripts/fetch_bot_reviews.py → dots/agents/skills/gh-review-bot-comments/scripts/fetch_bot_reviews.py
File renamed without changes
dots/config/claude/skills/gh-review-bot-comments/workflows/TriageBotComments.md → dots/agents/skills/gh-review-bot-comments/workflows/TriageBotComments.md
File renamed without changes
dots/config/claude/skills/gh-review-bot-comments/SKILL.md → dots/agents/skills/gh-review-bot-comments/SKILL.md
File renamed without changes
dots/config/claude/skills/git/workflows/Branch.md → dots/agents/skills/git/workflows/Branch.md
File renamed without changes
dots/config/claude/skills/git/workflows/Commit.md → dots/agents/skills/git/workflows/Commit.md
File renamed without changes
dots/config/claude/skills/git/workflows/Merge.md → dots/agents/skills/git/workflows/Merge.md
File renamed without changes
dots/config/claude/skills/git/workflows/Rebase.md → dots/agents/skills/git/workflows/Rebase.md
File renamed without changes
dots/config/claude/skills/git/Advanced.md → dots/agents/skills/git/Advanced.md
File renamed without changes
dots/config/claude/skills/git/SKILL.md → dots/agents/skills/git/SKILL.md
File renamed without changes
dots/config/claude/skills/github/tools/README.md → dots/agents/skills/github/tools/README.md
File renamed without changes
dots/config/claude/skills/github/workflows/CheckStatus.md → dots/agents/skills/github/workflows/CheckStatus.md
File renamed without changes
dots/config/claude/skills/github/workflows/CreatePR.md → dots/agents/skills/github/workflows/CreatePR.md
File renamed without changes
dots/config/claude/skills/github/workflows/ManageIssues.md → dots/agents/skills/github/workflows/ManageIssues.md
File renamed without changes
dots/config/claude/skills/github/workflows/ResolvePRComments.md → dots/agents/skills/github/workflows/ResolvePRComments.md
File renamed without changes
dots/config/claude/skills/github/workflows/RestartChecks.md → dots/agents/skills/github/workflows/RestartChecks.md
File renamed without changes
dots/config/claude/skills/github/workflows/ReviewPR.md → dots/agents/skills/github/workflows/ReviewPR.md
File renamed without changes
dots/config/claude/skills/github/SKILL.md → dots/agents/skills/github/SKILL.md
File renamed without changes
dots/config/claude/skills/github-triage/workflows/SingleIssue.md → dots/agents/skills/github-triage/workflows/SingleIssue.md
File renamed without changes
dots/config/claude/skills/github-triage/workflows/Triage.md → dots/agents/skills/github-triage/workflows/Triage.md
File renamed without changes
dots/config/claude/skills/github-triage/SKILL.md → dots/agents/skills/github-triage/SKILL.md
File renamed without changes
dots/config/claude/skills/golang/workflows/Build.md → dots/agents/skills/golang/workflows/Build.md
File renamed without changes
dots/config/claude/skills/golang/workflows/Debug.md → dots/agents/skills/golang/workflows/Debug.md
File renamed without changes
dots/config/claude/skills/golang/workflows/Deps.md → dots/agents/skills/golang/workflows/Deps.md
File renamed without changes
dots/config/claude/skills/golang/workflows/Lint.md → dots/agents/skills/golang/workflows/Lint.md
File renamed without changes
dots/config/claude/skills/golang/workflows/Test.md → dots/agents/skills/golang/workflows/Test.md
File renamed without changes
dots/config/claude/skills/golang/Advanced.md → dots/agents/skills/golang/Advanced.md
File renamed without changes
dots/config/claude/skills/golang/nix-integration.md → dots/agents/skills/golang/nix-integration.md
File renamed without changes
dots/config/claude/skills/golang/SKILL.md → dots/agents/skills/golang/SKILL.md
File renamed without changes
dots/config/claude/skills/google-workspace/scripts/.gitignore → dots/agents/skills/google-workspace/scripts/.gitignore
File renamed without changes
dots/config/claude/skills/google-workspace/scripts/auth.js → dots/agents/skills/google-workspace/scripts/auth.js
File renamed without changes
dots/config/claude/skills/google-workspace/scripts/common.js → dots/agents/skills/google-workspace/scripts/common.js
File renamed without changes
dots/config/claude/skills/google-workspace/scripts/package.json → dots/agents/skills/google-workspace/scripts/package.json
File renamed without changes
dots/config/claude/skills/google-workspace/scripts/workspace.js → dots/agents/skills/google-workspace/scripts/workspace.js
File renamed without changes
dots/config/claude/skills/google-workspace/SKILL.md → dots/agents/skills/google-workspace/SKILL.md
File renamed without changes
dots/config/claude/skills/handoff/scripts/create_handoff.py → dots/agents/skills/handoff/scripts/create_handoff.py
File renamed without changes
dots/config/claude/skills/handoff/SKILL.md → dots/agents/skills/handoff/SKILL.md
File renamed without changes
dots/config/claude/skills/homelab/SKILL.md → dots/agents/skills/homelab/SKILL.md
File renamed without changes
dots/config/claude/skills/jira/tools/jira-search → dots/agents/skills/jira/tools/jira-search
File renamed without changes
dots/config/claude/skills/jira/tools/jira-sprint-summary → dots/agents/skills/jira/tools/jira-sprint-summary
File renamed without changes
dots/config/claude/skills/jira/tools/jira-to-todo → dots/agents/skills/jira/tools/jira-to-todo
File renamed without changes
dots/config/claude/skills/jira/workflows/Comment.md → dots/agents/skills/jira/workflows/Comment.md
File renamed without changes
dots/config/claude/skills/jira/workflows/Create.md → dots/agents/skills/jira/workflows/Create.md
File renamed without changes
dots/config/claude/skills/jira/workflows/List.md → dots/agents/skills/jira/workflows/List.md
File renamed without changes
dots/config/claude/skills/jira/workflows/Search.md → dots/agents/skills/jira/workflows/Search.md
File renamed without changes
dots/config/claude/skills/jira/workflows/Sprint.md → dots/agents/skills/jira/workflows/Sprint.md
File renamed without changes
dots/config/claude/skills/jira/workflows/Transition.md → dots/agents/skills/jira/workflows/Transition.md
File renamed without changes
dots/config/claude/skills/jira/workflows/Update.md → dots/agents/skills/jira/workflows/Update.md
File renamed without changes
dots/config/claude/skills/jira/workflows/View.md → dots/agents/skills/jira/workflows/View.md
File renamed without changes
dots/config/claude/skills/jira/PROPOSALS.md → dots/agents/skills/jira/PROPOSALS.md
File renamed without changes
dots/config/claude/skills/jira/README.md → dots/agents/skills/jira/README.md
File renamed without changes
dots/config/claude/skills/jira/SKILL.md → dots/agents/skills/jira/SKILL.md
File renamed without changes
dots/config/claude/skills/journal/README.md → dots/agents/skills/journal/README.md
File renamed without changes
dots/config/claude/skills/kubernetes/workflows/Context.md → dots/agents/skills/kubernetes/workflows/Context.md
File renamed without changes
dots/config/claude/skills/kubernetes/workflows/Debug.md → dots/agents/skills/kubernetes/workflows/Debug.md
File renamed without changes
dots/config/claude/skills/kubernetes/workflows/Deploy.md → dots/agents/skills/kubernetes/workflows/Deploy.md
File renamed without changes
dots/config/claude/skills/kubernetes/workflows/Resources.md → dots/agents/skills/kubernetes/workflows/Resources.md
File renamed without changes
dots/config/claude/skills/kubernetes/workflows/Scaling.md → dots/agents/skills/kubernetes/workflows/Scaling.md
File renamed without changes
dots/config/claude/skills/kubernetes/workflows/Security.md → dots/agents/skills/kubernetes/workflows/Security.md
File renamed without changes
dots/config/claude/skills/kubernetes/SKILL.md → dots/agents/skills/kubernetes/SKILL.md
File renamed without changes
dots/config/claude/skills/nix/workflows/Build.md → dots/agents/skills/nix/workflows/Build.md
File renamed without changes
dots/config/claude/skills/nix/workflows/Deploy.md → dots/agents/skills/nix/workflows/Deploy.md
File renamed without changes
dots/config/claude/skills/nix/workflows/Develop.md → dots/agents/skills/nix/workflows/Develop.md
File renamed without changes
dots/config/claude/skills/nix/workflows/Flakes.md → dots/agents/skills/nix/workflows/Flakes.md
File renamed without changes
dots/config/claude/skills/nix/workflows/Package.md → dots/agents/skills/nix/workflows/Package.md
File renamed without changes
dots/config/claude/skills/nix/workflows/Secrets.md → dots/agents/skills/nix/workflows/Secrets.md
File renamed without changes
dots/config/claude/skills/nix/Advanced.md → dots/agents/skills/nix/Advanced.md
File renamed without changes
dots/config/claude/skills/nix/SKILL.md → dots/agents/skills/nix/SKILL.md
File renamed without changes
dots/config/claude/skills/nixpkgs/scripts/auto-merge-pr → dots/agents/skills/nixpkgs/scripts/auto-merge-pr
File renamed without changes
dots/config/claude/skills/nixpkgs/workflows/AddPackage.md → dots/agents/skills/nixpkgs/workflows/AddPackage.md
File renamed without changes
dots/config/claude/skills/nixpkgs/workflows/FixPackage.md → dots/agents/skills/nixpkgs/workflows/FixPackage.md
File renamed without changes
dots/config/claude/skills/nixpkgs/workflows/Maintainer.md → dots/agents/skills/nixpkgs/workflows/Maintainer.md
File renamed without changes
dots/config/claude/skills/nixpkgs/workflows/Review.md → dots/agents/skills/nixpkgs/workflows/Review.md
File renamed without changes
dots/config/claude/skills/nixpkgs/workflows/UpdatePackage.md → dots/agents/skills/nixpkgs/workflows/UpdatePackage.md
File renamed without changes
dots/config/claude/skills/nixpkgs/review-checklist.md → dots/agents/skills/nixpkgs/review-checklist.md
File renamed without changes
dots/config/claude/skills/nixpkgs/SKILL.md → dots/agents/skills/nixpkgs/SKILL.md
File renamed without changes
dots/config/claude/skills/org/tools/tests/fixtures/test-todos.org → dots/agents/skills/org/tools/tests/fixtures/test-todos.org
File renamed without changes
dots/config/claude/skills/org/tools/tests/batch-functions-test.el → dots/agents/skills/org/tools/tests/batch-functions-test.el
File renamed without changes
dots/config/claude/skills/org/tools/tests/run-tests.sh → dots/agents/skills/org/tools/tests/run-tests.sh
File renamed without changes
dots/config/claude/skills/org/tools/batch-functions.el → dots/agents/skills/org/tools/batch-functions.el
File renamed without changes
dots/config/claude/skills/org/tools/org-manager → dots/agents/skills/org/tools/org-manager
File renamed without changes
dots/config/claude/skills/org/SKILL.md → dots/agents/skills/org/SKILL.md
File renamed without changes
dots/config/claude/skills/python/tools/python-check → dots/agents/skills/python/tools/python-check
File renamed without changes
dots/config/claude/skills/python/tools/python-lint → dots/agents/skills/python/tools/python-lint
File renamed without changes
dots/config/claude/skills/python/workflows/Deps.md → dots/agents/skills/python/workflows/Deps.md
File renamed without changes
dots/config/claude/skills/python/workflows/Lint.md → dots/agents/skills/python/workflows/Lint.md
File renamed without changes
dots/config/claude/skills/python/workflows/Project.md → dots/agents/skills/python/workflows/Project.md
File renamed without changes
dots/config/claude/skills/python/workflows/Test.md → dots/agents/skills/python/workflows/Test.md
File renamed without changes
dots/config/claude/skills/python/workflows/Type.md → dots/agents/skills/python/workflows/Type.md
File renamed without changes
dots/config/claude/skills/python/Advanced.md → dots/agents/skills/python/Advanced.md
File renamed without changes
dots/config/claude/skills/python/README.md → dots/agents/skills/python/README.md
File renamed without changes
dots/config/claude/skills/python/SKILL.md → dots/agents/skills/python/SKILL.md
File renamed without changes
dots/config/claude/skills/quarterly-report/reference/Template.html → dots/agents/skills/quarterly-report/reference/Template.html
File renamed without changes
dots/config/claude/skills/quarterly-report/workflows/Generate.md → dots/agents/skills/quarterly-report/workflows/Generate.md
File renamed without changes
dots/config/claude/skills/quarterly-report/SKILL.md → dots/agents/skills/quarterly-report/SKILL.md
File renamed without changes
dots/config/claude/skills/rust/workflows/Build.md → dots/agents/skills/rust/workflows/Build.md
File renamed without changes
dots/config/claude/skills/rust/workflows/Deps.md → dots/agents/skills/rust/workflows/Deps.md
File renamed without changes
dots/config/claude/skills/rust/workflows/Error.md → dots/agents/skills/rust/workflows/Error.md
File renamed without changes
dots/config/claude/skills/rust/workflows/Lint.md → dots/agents/skills/rust/workflows/Lint.md
File renamed without changes
dots/config/claude/skills/rust/workflows/Test.md → dots/agents/skills/rust/workflows/Test.md
File renamed without changes
dots/config/claude/skills/rust/Advanced.md → dots/agents/skills/rust/Advanced.md
File renamed without changes
dots/config/claude/skills/rust/README.md → dots/agents/skills/rust/README.md
File renamed without changes
dots/config/claude/skills/rust/SKILL.md → dots/agents/skills/rust/SKILL.md
File renamed without changes
dots/config/claude/skills/slack/tools/slack-read.sh → dots/agents/skills/slack/tools/slack-read.sh
File renamed without changes
dots/config/claude/skills/slack/SKILL.md → dots/agents/skills/slack/SKILL.md
File renamed without changes
dots/config/claude/skills/tekton/workflows/Build.md → dots/agents/skills/tekton/workflows/Build.md
File renamed without changes
dots/config/claude/skills/tekton/workflows/Pipelines.md → dots/agents/skills/tekton/workflows/Pipelines.md
File renamed without changes
dots/config/claude/skills/tekton/workflows/Tasks.md → dots/agents/skills/tekton/workflows/Tasks.md
File renamed without changes
dots/config/claude/skills/tekton/workflows/TknCli.md → dots/agents/skills/tekton/workflows/TknCli.md
File renamed without changes
dots/config/claude/skills/tekton/workflows/Triggers.md → dots/agents/skills/tekton/workflows/Triggers.md
File renamed without changes
dots/config/claude/skills/tekton/Advanced.md → dots/agents/skills/tekton/Advanced.md
File renamed without changes
dots/config/claude/skills/tekton/SKILL.md → dots/agents/skills/tekton/SKILL.md
File renamed without changes
dots/config/claude/skills/todos/tools/org-manager → dots/agents/skills/todos/tools/org-manager
File renamed without changes
dots/config/claude/skills/todos/workflows/Add.md → dots/agents/skills/todos/workflows/Add.md
File renamed without changes
dots/config/claude/skills/todos/workflows/Project.md → dots/agents/skills/todos/workflows/Project.md
File renamed without changes
dots/config/claude/skills/todos/workflows/Recurring.md → dots/agents/skills/todos/workflows/Recurring.md
File renamed without changes
dots/config/claude/skills/todos/workflows/Review.md → dots/agents/skills/todos/workflows/Review.md
File renamed without changes
dots/config/claude/skills/todos/workflows/Update.md → dots/agents/skills/todos/workflows/Update.md
File renamed without changes
dots/config/claude/skills/todos/workflows/View.md → dots/agents/skills/todos/workflows/View.md
File renamed without changes
dots/config/claude/skills/todos/Advanced.md → dots/agents/skills/todos/Advanced.md
File renamed without changes
dots/config/claude/skills/todos/README.md → dots/agents/skills/todos/README.md
File renamed without changes
dots/config/claude/skills/todos/SKILL.md → dots/agents/skills/todos/SKILL.md
File renamed without changes
dots/config/claude/skills/.gitignore
@@ -1,12 +0,0 @@
-# emacs-skills (managed by `make emacs-skills`, cloned to ~/.local/share/emacs-skills)
-d2
-describe
-dired
-emacsclient
-file-links
-gnuplot
-highlight
-mermaid
-open
-plantuml
-select
dots/config/claude/skills/review-pr-critically
@@ -1,1 +0,0 @@
-../../../agents/skills/review-pr-critically
\ No newline at end of file
dots/Makefile
@@ -31,8 +31,7 @@ nvim : ~/.config/nvim
##@ Claude Code
-all += claude-skills claude-agents claude-settings claude-hooks claude-plugins claude-statusline claude-compat
-claude-skills : ~/.config/claude/skills
+all += claude-agents claude-settings claude-hooks claude-plugins claude-statusline claude-compat
claude-agents : ~/.config/claude/agents
claude-settings : ~/.config/claude/settings.json
claude-hooks : ~/.config/claude/hooks
@@ -75,7 +74,7 @@ EMACS_SKILLS_DIR := $(HOME)/.local/share/emacs-skills
EMACS_SKILLS := d2 describe dired emacsclient file-links gnuplot highlight mermaid open plantuml select
all += emacs-skills
-emacs-skills : claude-skills
+emacs-skills : agent-skills-link
@if [ ! -d "$(EMACS_SKILLS_DIR)/.git" ]; then \
echo "📦 Cloning emacs-skills..."; \
git clone --quiet $(EMACS_SKILLS_REPO) $(EMACS_SKILLS_DIR); \
@@ -86,7 +85,7 @@ emacs-skills : claude-skills
fi
@for skill in $(EMACS_SKILLS); do \
if [ -d "$(EMACS_SKILLS_DIR)/skills/$$skill" ]; then \
- ln -snf "$(EMACS_SKILLS_DIR)/skills/$$skill" "$(dotfiles)/config/claude/skills/$$skill"; \
+ ln -snf "$(EMACS_SKILLS_DIR)/skills/$$skill" ~/.config/claude/skills/$$skill; \
echo " → $$skill"; \
fi; \
done
@@ -94,16 +93,44 @@ emacs-skills : claude-skills
##@ AI Shared Config
-all += agent-skills agent-skill-manager-bin ai-config shared-agent-skills skills-install
+all += agent-skills agent-skill-manager-bin ai-config agent-skills-link skills-install
agent-skills : ~/.config/agent-skills
-shared-agent-skills : ~/.agents/skills/review-pr-critically
+
+# Symlink each skill from dots/agents/skills/ into all agent skill directories.
+# This is the single source of truth for our own skills.
+AGENT_SKILL_DIRS := ~/.config/claude/skills ~/.agents/skills ~/.pi/agent/skills
+
+agent-skills-link:
+ @for dir in $(AGENT_SKILL_DIRS); do \
+ mkdir -p $$dir; \
+ done
+ @for skill in $(dotfiles)/agents/skills/*/; do \
+ name=$$(basename $$skill); \
+ for dir in $(AGENT_SKILL_DIRS); do \
+ if [ ! -e "$$dir/$$name" ]; then \
+ ln -snf "$$skill" "$$dir/$$name"; \
+ echo " → $$name -> $$dir"; \
+ fi; \
+ done; \
+ done
+ @for skill in $(HOME)/.agents/skills/*/; do \
+ name=$$(basename $$skill); \
+ for dir in $(AGENT_SKILL_DIRS); do \
+ case "$$dir" in */.agents/skills) continue;; esac; \
+ if [ ! -e "$$dir/$$name" ]; then \
+ ln -snf "$$skill" "$$dir/$$name"; \
+ echo " → $$name -> $$dir (from ~/.agents)"; \
+ fi; \
+ done; \
+ done
+ @echo "✅ Agent skills linked!"
# Declarative skill packages — installed via `skills` CLI if not present.
# Format: sentinel-skill=package (sentinel is any skill name from the package)
# Installed to ~/.agents/skills/ and auto-linked to Claude, Pi, etc.
SKILL_PACKAGES := brainstorming=obra/superpowers make-interfaces-feel-better=jakubkrehel/make-interfaces-feel-better
-skills-install:
+skills-install: agent-skills-link
@for entry in $(SKILL_PACKAGES); do \
sentinel=$${entry%%=*}; \
pkg=$${entry#*=}; \
@@ -119,6 +146,7 @@ skills-update:
@echo "🔄 Updating all installed skills..."
@skills update -g -y
@echo "✅ Skills updated!"
+
ai-config : ~/.config/ai/skills ~/.config/ai/path-policies.json
# Skills shared with claude via cross-link