repo-nexus 0.7.0 → 0.7.2
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/docs/.gitkeep +0 -0
- package/docs/plugins/index.md +1 -1
- package/docs/plugins/karpathy-llm.md +2 -2
- package/docs/rnex.example.yaml +3 -3
- package/lib/commands/init.sh +6 -0
- package/lib/commands/plugin.sh +1 -1
- package/lib/commands/sync.sh +6 -0
- package/lib/yaml.sh +16 -0
- package/package.json +2 -2
- package/templates/rnex.example.yaml +3 -3
- package/toolkit/plugins/karpathy-llm/hooks/after_sync.sh +78 -1
- package/toolkit/plugins/karpathy-llm/hooks/git_post-commit.sh +1 -1
- package/toolkit/plugins/karpathy-llm/hooks/git_post-merge.sh +1 -1
- package/toolkit/plugins/karpathy-llm/hooks/git_pre-commit.sh +1 -1
- package/toolkit/plugins/karpathy-llm/hooks/git_pre-push.sh +1 -1
- package/toolkit/plugins/karpathy-llm/plugin.yaml +16 -5
- package/toolkit/prompts/index.md +1 -0
- package/toolkit/prompts/rnex-cross-repo-feature.md +12 -31
- package/toolkit/prompts/rnex-wiki-ingest.md +18 -0
- package/toolkit/prompts/rnex-wiki-lint.md +17 -0
- package/toolkit/prompts/rnex-workspace-audit.md +12 -30
package/docs/.gitkeep
ADDED
|
File without changes
|
package/docs/plugins/index.md
CHANGED
|
@@ -97,7 +97,7 @@ plugins:
|
|
|
97
97
|
|
|
98
98
|
# Automated Git hook trigger for wiki verification
|
|
99
99
|
# Options: git-post-merge, git-post-commit, git-pre-commit, git-pre-push, manual
|
|
100
|
-
lint_trigger:
|
|
100
|
+
lint_trigger: manual
|
|
101
101
|
|
|
102
102
|
# Notify developer when changes are committed to ./docs/ or .rnex/wiki/
|
|
103
103
|
notify_on_changes: true
|
|
@@ -110,7 +110,7 @@ plugins:
|
|
|
110
110
|
|:---|:---|:---|:---|
|
|
111
111
|
| `wiki_dir` | string | `.rnex/wiki` | Directory containing curated atomic markdown pages. |
|
|
112
112
|
| `raw_dir` | string | `./docs` | Append-only directory for unmodified source intake documents. |
|
|
113
|
-
| `lint_trigger` | string | `
|
|
113
|
+
| `lint_trigger` | string | `manual` | Git hook event that triggers wiki change detection (`git-post-merge`, `git-post-commit`, `git-pre-commit`, `git-pre-push`, `manual`). |
|
|
114
114
|
| `notify_on_changes` | boolean | `true` | Show notification banner when changes are committed to `./docs/` or `.rnex/wiki/`. |
|
|
115
115
|
| `enabled` | boolean | `true` | Enable or disable the plugin. Overridable in `.local.rnex.yaml`. |
|
|
116
116
|
|
package/docs/rnex.example.yaml
CHANGED
|
@@ -113,9 +113,9 @@ plugins:
|
|
|
113
113
|
# prompts: true # mirror prompts to .windsurf/prompts/*.md (default: true)
|
|
114
114
|
# workflows: true # mirror workflows as prompts (default: true)
|
|
115
115
|
# karpathy-llm:
|
|
116
|
-
#
|
|
117
|
-
#
|
|
118
|
-
# lint_trigger:
|
|
116
|
+
# raw_dir: "./docs" # Append-only directory for unmodified intake documents (default: ./docs)
|
|
117
|
+
# wiki_dir: ".rnex/wiki" # Directory for curated atomic markdown pages (default: .rnex/wiki)
|
|
118
|
+
# lint_trigger: "manual" # Runs manually via 'rnex sync' or validation checklists (git-post-merge, git-post-commit, git-pre-commit, git-pre-push, manual)
|
|
119
119
|
# notify_on_changes: true # Show notification when changes are committed to ./docs or .rnex/wiki
|
|
120
120
|
|
|
121
121
|
# ------------------------------------------------------------------------------
|
package/lib/commands/init.sh
CHANGED
|
@@ -15,6 +15,7 @@ cmd_init() {
|
|
|
15
15
|
_cli_gemini=""
|
|
16
16
|
_cli_cursor=""
|
|
17
17
|
_cli_windsurf=""
|
|
18
|
+
_cli_karpathy=""
|
|
18
19
|
|
|
19
20
|
while [ $# -gt 0 ]; do
|
|
20
21
|
case "$1" in
|
|
@@ -31,6 +32,8 @@ cmd_init() {
|
|
|
31
32
|
--no-cursor) _cli_cursor="false" ;;
|
|
32
33
|
--windsurf) _cli_windsurf="true" ;;
|
|
33
34
|
--no-windsurf) _cli_windsurf="false" ;;
|
|
35
|
+
--karpathy|--karpathy-llm) _cli_karpathy="true" ;;
|
|
36
|
+
--no-karpathy|--no-karpathy-llm) _cli_karpathy="false" ;;
|
|
34
37
|
--ai|--instructions|--ai-instructions)
|
|
35
38
|
shift
|
|
36
39
|
# Legacy flag ignored in favor of plugins
|
|
@@ -116,6 +119,9 @@ cmd_init() {
|
|
|
116
119
|
if [ "$_cli_windsurf" = "true" ]; then
|
|
117
120
|
_init_plugins="${_init_plugins} windsurf:\n instructions: true\n prompts: true\n workflows: true\n"
|
|
118
121
|
fi
|
|
122
|
+
if [ "$_cli_karpathy" = "true" ]; then
|
|
123
|
+
_init_plugins="${_init_plugins} karpathy-llm:\n raw_dir: \"./docs\"\n wiki_dir: \".rnex/wiki\"\n lint_trigger: \"manual\"\n"
|
|
124
|
+
fi
|
|
119
125
|
|
|
120
126
|
cat > "$_target_yaml" <<YAML_EOF
|
|
121
127
|
# Repo Nexus workspace configuration
|
package/lib/commands/plugin.sh
CHANGED
|
@@ -87,7 +87,7 @@ cmd_plugin_info() {
|
|
|
87
87
|
printf '\n%bConfigurable Options (in rnex.yaml or .local.rnex.yaml):%b\n' "$_BOLD" "$_NC"
|
|
88
88
|
printf ' - wiki_dir: <dir> (directory for curated markdown pages; current: %s)\n' "$(karpathy_wiki_dir)"
|
|
89
89
|
printf ' - raw_dir: <dir> (directory for unmodified intake documents; current: %s)\n' "$(karpathy_raw_dir)"
|
|
90
|
-
printf ' - lint_trigger: git-post-merge|git-post-commit|git-pre-commit|git-pre-push|manual (current: %s)\n' "${_cur_lt:-
|
|
90
|
+
printf ' - lint_trigger: git-post-merge|git-post-commit|git-pre-commit|git-pre-push|manual (current: %s)\n' "${_cur_lt:-manual}"
|
|
91
91
|
printf ' - notify_on_changes: true|false (show notification when raw/wiki changes are committed; current: %s)\n' "${_cur_nc:-true}"
|
|
92
92
|
fi
|
|
93
93
|
|
package/lib/commands/sync.sh
CHANGED
|
@@ -108,6 +108,9 @@ cmd_sync() {
|
|
|
108
108
|
[ "$_sync_quiet" -eq 0 ] && log_ok "Upgraded workspace configuration and routing instructions to v$RNEX_VERSION"
|
|
109
109
|
fi
|
|
110
110
|
|
|
111
|
+
# Dispatch before_sync plugin lifecycle hook
|
|
112
|
+
run_hook "before_sync" "$@"
|
|
113
|
+
|
|
111
114
|
# 1. Ensure .gitignore ignores repos/, local configs; ensure .ignore has !repos/*
|
|
112
115
|
reconcile_gitignore "$NEXUS_DIR"
|
|
113
116
|
|
|
@@ -184,6 +187,9 @@ cmd_sync() {
|
|
|
184
187
|
# 10. Update sync stamp
|
|
185
188
|
update_sync_stamp "$NEXUS_DIR"
|
|
186
189
|
|
|
190
|
+
# Dispatch after_sync plugin lifecycle hook
|
|
191
|
+
run_hook "after_sync" "$@"
|
|
192
|
+
|
|
187
193
|
if [ "$_sync_quiet" -eq 0 ]; then
|
|
188
194
|
log_ok "Sync complete — workspace, plugins, prompts, and member .rnex directories reconciled"
|
|
189
195
|
fi
|
package/lib/yaml.sh
CHANGED
|
@@ -309,6 +309,22 @@ yaml_enable_plugin() {
|
|
|
309
309
|
}
|
|
310
310
|
' "$_target_file" > "$_tmp" && mv "$_tmp" "$_target_file"
|
|
311
311
|
;;
|
|
312
|
+
karpathy-llm)
|
|
313
|
+
awk -v name="$_name" '
|
|
314
|
+
/^plugins:[ ]*$/ || /^plugins:[ ]*#/ {
|
|
315
|
+
print
|
|
316
|
+
printf " %s:\n raw_dir: \"./docs\"\n wiki_dir: \".rnex/wiki\"\n lint_trigger: \"manual\"\n", name
|
|
317
|
+
added=1
|
|
318
|
+
next
|
|
319
|
+
}
|
|
320
|
+
{ print }
|
|
321
|
+
END {
|
|
322
|
+
if (!added) {
|
|
323
|
+
printf "plugins:\n %s:\n raw_dir: \"./docs\"\n wiki_dir: \".rnex/wiki\"\n lint_trigger: \"manual\"\n", name
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
' "$_target_file" > "$_tmp" && mv "$_tmp" "$_target_file"
|
|
327
|
+
;;
|
|
312
328
|
*)
|
|
313
329
|
awk -v name="$_name" '
|
|
314
330
|
/^plugins:[ ]*$/ || /^plugins:[ ]*#/ {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "repo-nexus",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.2",
|
|
4
4
|
"description": "Lightweight, zero-dependency Virtual Meta-Repo companion for multi-repo workspaces and shared AI context (no git submodules)",
|
|
5
5
|
"bin": {
|
|
6
6
|
"repo-nexus": "rnex",
|
|
@@ -68,4 +68,4 @@
|
|
|
68
68
|
"devDependencies": {
|
|
69
69
|
"vitepress": "^1.6.0"
|
|
70
70
|
}
|
|
71
|
-
}
|
|
71
|
+
}
|
|
@@ -113,9 +113,9 @@ plugins:
|
|
|
113
113
|
# prompts: true # mirror prompts to .windsurf/prompts/*.md (default: true)
|
|
114
114
|
# workflows: true # mirror workflows as prompts (default: true)
|
|
115
115
|
# karpathy-llm:
|
|
116
|
-
#
|
|
117
|
-
#
|
|
118
|
-
# lint_trigger:
|
|
116
|
+
# raw_dir: "./docs" # Append-only directory for unmodified intake documents (default: ./docs)
|
|
117
|
+
# wiki_dir: ".rnex/wiki" # Directory for curated atomic markdown pages (default: .rnex/wiki)
|
|
118
|
+
# lint_trigger: "manual" # Runs manually via 'rnex sync' or validation checklists (git-post-merge, git-post-commit, git-pre-commit, git-pre-push, manual)
|
|
119
119
|
# notify_on_changes: true # Show notification when changes are committed to ./docs or .rnex/wiki
|
|
120
120
|
|
|
121
121
|
# ------------------------------------------------------------------------------
|
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
#!/bin/sh
|
|
2
2
|
set -e
|
|
3
3
|
|
|
4
|
+
# Exit early if rnex utilities aren't available
|
|
5
|
+
[ -z "$RNEX_ROOT" ] && { echo "Error: RNEX_ROOT not set"; exit 1; }
|
|
6
|
+
|
|
4
7
|
# Resolve root workspace
|
|
5
|
-
_root="$
|
|
8
|
+
_root="$RNEX_ROOT"
|
|
9
|
+
|
|
10
|
+
# Target directory inside .rnex/ (the internal wiki's Raw intake state)
|
|
11
|
+
WIKI_RAW_DIR="$RNEX_ROOT/.rnex/wiki/raw"
|
|
12
|
+
mkdir -p "$WIKI_RAW_DIR"
|
|
6
13
|
|
|
7
14
|
# Helper to read plugin config
|
|
8
15
|
get_cfg() {
|
|
@@ -74,3 +81,73 @@ mkdir -p "$_pdir/templates"
|
|
|
74
81
|
if [ -f "$_tmpl_dir/rnex-wiki-page.sample.md" ] && [ ! -f "$_pdir/templates/rnex-wiki-page.template.md" ]; then
|
|
75
82
|
cp "$_tmpl_dir/rnex-wiki-page.sample.md" "$_pdir/templates/rnex-wiki-page.template.md"
|
|
76
83
|
fi
|
|
84
|
+
|
|
85
|
+
# 1. Parse 'raw_dir' configuration from rnex.yaml/.local.rnex.yaml (Defaults to './docs')
|
|
86
|
+
# We check if parsed in RNEX_CONFIG_MERGED (YAML) using a standard grep/sed lookup
|
|
87
|
+
RAW_DIR_VAL=$(grep -h -E '^\s*raw_dir:' "$RNEX_ROOT/rnex.yaml" "$RNEX_ROOT/.local.rnex.yaml" 2>/dev/null | tail -n1 | awk -F: '{print $NF}' | awk '{print $1}' | tr -d '"'\''')
|
|
88
|
+
[ -z "$RAW_DIR_VAL" ] && RAW_DIR_VAL="$(get_cfg "raw_dir" "./docs")"
|
|
89
|
+
RAW_DIR="${RAW_DIR_VAL:-./docs}"
|
|
90
|
+
|
|
91
|
+
# Clear and sync custom local raw folder files to raw intake (skip if RAW_DIR is a documentation site)
|
|
92
|
+
if [ -d "$RNEX_ROOT/$RAW_DIR" ] && [ ! -d "$RNEX_ROOT/$RAW_DIR/.vitepress" ]; then
|
|
93
|
+
_raw_abs="$(cd "$RNEX_ROOT/$RAW_DIR" 2>/dev/null && pwd -P || true)"
|
|
94
|
+
_wiki_raw_abs="$(cd "$WIKI_RAW_DIR" 2>/dev/null && pwd -P || true)"
|
|
95
|
+
if [ -n "$_raw_abs" ] && [ "$_raw_abs" != "$_wiki_raw_abs" ]; then
|
|
96
|
+
find "$RNEX_ROOT/$RAW_DIR" -type f \( -name "*.md" -o -name "*.txt" -o -name "*.json" \) 2>/dev/null | while read -r filepath; do
|
|
97
|
+
filename=$(basename "$filepath")
|
|
98
|
+
# Prevent overwriting standard operational files
|
|
99
|
+
if [ "$filename" != "index.md" ] && [ "$filename" != "hot.md" ] && [ "$filename" != "_log.md" ]; then
|
|
100
|
+
cp "$filepath" "$WIKI_RAW_DIR/$filename"
|
|
101
|
+
fi
|
|
102
|
+
done
|
|
103
|
+
fi
|
|
104
|
+
fi
|
|
105
|
+
|
|
106
|
+
# 2. Automatically sync README.md from all enabled/cloned member repositories
|
|
107
|
+
# Get list of enabled repositories using a secure cross-repo read or `rnex list`
|
|
108
|
+
REPOS_DIR_VAL=$(grep -h -E '^\s*repos_dir:' "$RNEX_ROOT/rnex.yaml" "$RNEX_ROOT/.local.rnex.yaml" 2>/dev/null | tail -n1 | awk -F: '{print $NF}' | awk '{print $1}' | tr -d '"'\''')
|
|
109
|
+
REPOS_DIR="${REPOS_DIR_VAL:-./repos}"
|
|
110
|
+
|
|
111
|
+
if [ -d "$RNEX_ROOT/$REPOS_DIR" ]; then
|
|
112
|
+
for repo_path in "$RNEX_ROOT/$REPOS_DIR"/*; do
|
|
113
|
+
[ ! -d "$repo_path" ] && continue
|
|
114
|
+
repo_name=$(basename "$repo_path")
|
|
115
|
+
|
|
116
|
+
# Check if this repository is explicitly disabled in .local.rnex.yaml or rnex.yaml (block-scoped)
|
|
117
|
+
_is_disabled=""
|
|
118
|
+
for _cfg_file in "$RNEX_ROOT/.local.rnex.yaml" "$RNEX_ROOT/rnex.yaml"; do
|
|
119
|
+
[ -f "$_cfg_file" ] || continue
|
|
120
|
+
_en="$(awk -v repo="$repo_name" '
|
|
121
|
+
/^repos:[ ]*$/ || /^repos:[ ]*#/ { r=1; next }
|
|
122
|
+
r && /^[^ #]/ { r=0 }
|
|
123
|
+
r && match($0, "^ " repo ":[ ]*(#.*)?$") { in_target=1; next }
|
|
124
|
+
in_target && /^ [^ #]/ { in_target=0 }
|
|
125
|
+
in_target && match($0, "^ enabled:[ ]*") {
|
|
126
|
+
line = $0
|
|
127
|
+
sub("^ enabled:[ ]*", "", line)
|
|
128
|
+
sub(/[ ]*#.*$/, "", line)
|
|
129
|
+
gsub(/^["\x27]|["\x27]$/, "", line)
|
|
130
|
+
print line
|
|
131
|
+
exit
|
|
132
|
+
}
|
|
133
|
+
' "$_cfg_file")"
|
|
134
|
+
if [ -n "$_en" ]; then
|
|
135
|
+
case "$(printf '%s' "$_en" | tr '[:upper:]' '[:lower:]')" in
|
|
136
|
+
false|no|0|disabled|off) _is_disabled=1 ;;
|
|
137
|
+
*) _is_disabled=0 ;;
|
|
138
|
+
esac
|
|
139
|
+
break
|
|
140
|
+
fi
|
|
141
|
+
done
|
|
142
|
+
[ "$_is_disabled" = "1" ] && continue
|
|
143
|
+
|
|
144
|
+
# Read and sync any README file with case-insensitive check
|
|
145
|
+
for readme_name in README.md readme.md README.markdown README; do
|
|
146
|
+
if [ -f "$repo_path/$readme_name" ]; then
|
|
147
|
+
# Namespace the copied file with its repo name to prevent conflicts
|
|
148
|
+
cp "$repo_path/$readme_name" "$WIKI_RAW_DIR/README_${repo_name}.md"
|
|
149
|
+
break
|
|
150
|
+
fi
|
|
151
|
+
done
|
|
152
|
+
done
|
|
153
|
+
fi
|
|
@@ -40,7 +40,7 @@ _raw="$(get_cfg "raw_dir" "./docs")"
|
|
|
40
40
|
_wiki="$(printf '%s' "$_wiki" | sed -e 's#^/##' -e 's#/$##')"
|
|
41
41
|
_raw="$(printf '%s' "$_raw" | sed -e 's#^\./##' -e 's#^/##' -e 's#/$##')"
|
|
42
42
|
|
|
43
|
-
_trigger="$(get_cfg "lint_trigger" "
|
|
43
|
+
_trigger="$(get_cfg "lint_trigger" "manual")"
|
|
44
44
|
if [ "$_trigger" = "git-post-commit" ] || [ "$_trigger" = "post-commit" ]; then
|
|
45
45
|
if git -C "$_root" diff-tree -r --name-only HEAD 2>/dev/null | grep -qE "(^|/)($_raw|$_wiki)/"; then
|
|
46
46
|
_notify="$(get_cfg "notify_on_changes" "true")"
|
|
@@ -40,7 +40,7 @@ _raw="$(get_cfg "raw_dir" "./docs")"
|
|
|
40
40
|
_wiki="$(printf '%s' "$_wiki" | sed -e 's#^/##' -e 's#/$##')"
|
|
41
41
|
_raw="$(printf '%s' "$_raw" | sed -e 's#^\./##' -e 's#^/##' -e 's#/$##')"
|
|
42
42
|
|
|
43
|
-
_trigger="$(get_cfg "lint_trigger" "
|
|
43
|
+
_trigger="$(get_cfg "lint_trigger" "manual")"
|
|
44
44
|
if [ "$_trigger" = "git-post-merge" ] || [ "$_trigger" = "post-merge" ]; then
|
|
45
45
|
if git -C "$_root" diff-tree -r --name-only ORIG_HEAD HEAD 2>/dev/null | grep -qE "(^|/)($_raw|$_wiki)/"; then
|
|
46
46
|
_notify="$(get_cfg "notify_on_changes" "true")"
|
|
@@ -40,7 +40,7 @@ _raw="$(get_cfg "raw_dir" "./docs")"
|
|
|
40
40
|
_wiki="$(printf '%s' "$_wiki" | sed -e 's#^/##' -e 's#/$##')"
|
|
41
41
|
_raw="$(printf '%s' "$_raw" | sed -e 's#^\./##' -e 's#^/##' -e 's#/$##')"
|
|
42
42
|
|
|
43
|
-
_trigger="$(get_cfg "lint_trigger" "
|
|
43
|
+
_trigger="$(get_cfg "lint_trigger" "manual")"
|
|
44
44
|
if [ "$_trigger" = "git-pre-commit" ] || [ "$_trigger" = "pre-commit" ]; then
|
|
45
45
|
if git -C "$_root" diff --cached --name-only 2>/dev/null | grep -qE "(^|/)($_raw|$_wiki)/"; then
|
|
46
46
|
_notify="$(get_cfg "notify_on_changes" "true")"
|
|
@@ -40,7 +40,7 @@ _raw="$(get_cfg "raw_dir" "./docs")"
|
|
|
40
40
|
_wiki="$(printf '%s' "$_wiki" | sed -e 's#^/##' -e 's#/$##')"
|
|
41
41
|
_raw="$(printf '%s' "$_raw" | sed -e 's#^\./##' -e 's#^/##' -e 's#/$##')"
|
|
42
42
|
|
|
43
|
-
_trigger="$(get_cfg "lint_trigger" "
|
|
43
|
+
_trigger="$(get_cfg "lint_trigger" "manual")"
|
|
44
44
|
if [ "$_trigger" = "git-pre-push" ] || [ "$_trigger" = "pre-push" ]; then
|
|
45
45
|
_notify="$(get_cfg "notify_on_changes" "true")"
|
|
46
46
|
if [ "$_notify" != "false" ]; then
|
|
@@ -1,17 +1,28 @@
|
|
|
1
1
|
name: karpathy-llm
|
|
2
|
-
version: 0.
|
|
3
|
-
description:
|
|
2
|
+
version: 1.0.0
|
|
3
|
+
description: Andréj Karpathy's verification frameworks & wiki patterns for AI coding agents.
|
|
4
4
|
author: unoxen
|
|
5
5
|
homepage: https://github.com/unoxen/repo-nexus
|
|
6
|
+
|
|
7
|
+
config_defaults:
|
|
8
|
+
raw_dir: "./docs"
|
|
9
|
+
wiki_dir: ".rnex/wiki"
|
|
10
|
+
lint_trigger: "manual" # Default changed to manual to avoid unsolicited background trigger tasks
|
|
11
|
+
notify_on_changes: true
|
|
12
|
+
|
|
6
13
|
config:
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
lint_trigger:
|
|
14
|
+
raw_dir: "./docs"
|
|
15
|
+
wiki_dir: ".rnex/wiki"
|
|
16
|
+
lint_trigger: "manual"
|
|
10
17
|
notify_on_changes: true
|
|
18
|
+
|
|
11
19
|
rules:
|
|
12
20
|
- rules/rnex-behavioral.md: .rnex/plugins/karpathy-llm/rules/rnex-behavioral.md
|
|
21
|
+
- rules/behavioral.md: .rnex/plugins/karpathy-llm/rules/behavioral.md
|
|
13
22
|
- workflows/rnex-wiki-ingest.md: .rnex/plugins/karpathy-llm/workflows/rnex-wiki-ingest.md
|
|
23
|
+
- workflows/wiki-ingest.md: .rnex/plugins/karpathy-llm/workflows/wiki-ingest.md
|
|
14
24
|
- workflows/rnex-wiki-lint.md: .rnex/plugins/karpathy-llm/workflows/rnex-wiki-lint.md
|
|
25
|
+
- workflows/wiki-lint.md: .rnex/plugins/karpathy-llm/workflows/wiki-lint.md
|
|
15
26
|
instructions:
|
|
16
27
|
- instructions/rnex-wiki-architecture.md: .rnex/plugins/karpathy-llm/instructions/rnex-wiki-architecture.md
|
|
17
28
|
templates:
|
package/toolkit/prompts/index.md
CHANGED
|
@@ -20,3 +20,4 @@ When an AI assistant is assigned a cross-repo or workspace-wide task, consult th
|
|
|
20
20
|
4. **[`rnex-wiki-lint.md`](./rnex-wiki-lint.md)**
|
|
21
21
|
- **Purpose**: Deterministic graph audit, dead link validation, `mentioned_in` backlink reconciliation, and index rebuild.
|
|
22
22
|
- **When to use**: Routine wiki maintenance, pre-commit validation, or after adding/renaming wiki pages.
|
|
23
|
+
|
|
@@ -1,35 +1,16 @@
|
|
|
1
|
-
# Cross-Repository Feature Implementation
|
|
1
|
+
# Operational Task: Cross-Repository Feature Implementation
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
You are tasked with planning, coordinating, and executing a feature spanning multiple member repositories in this Repo Nexus workspace.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Context & Inputs
|
|
6
|
+
- Target Scope: `repos/<name>/` directory trees
|
|
7
|
+
- Workspace Manifest: `rnex.yaml` and `.local.rnex.yaml`
|
|
8
|
+
- AI Instructions: `.rnex/ai-instructions.md`
|
|
6
9
|
|
|
7
|
-
##
|
|
8
|
-
1.
|
|
9
|
-
2.
|
|
10
|
-
3.
|
|
11
|
-
4.
|
|
10
|
+
## Skill & Workflow Router
|
|
11
|
+
1. Read the operational skill requirements in `.rnex/skills/rnex-cross-repo-feature/SKILL.md`.
|
|
12
|
+
2. Follow the staged execution protocol strictly in `.rnex/workflows/rnex-cross-repo-feature.md`.
|
|
13
|
+
3. Adhere to mandatory session startup, routing protocols, and member repo boundary rules in `.rnex/ai-instructions.md`.
|
|
14
|
+
4. Do NOT execute uncompiled heuristics or perform unguided exploratory codebase scans.
|
|
12
15
|
|
|
13
|
-
|
|
14
|
-
1. Order repository changes by dependency hierarchy (e.g. backend / shared models first, frontend / consumers second).
|
|
15
|
-
2. For each member repository:
|
|
16
|
-
- Identify specific files to modify.
|
|
17
|
-
- Check member repo test suite requirements.
|
|
18
|
-
|
|
19
|
-
## 3. Execution
|
|
20
|
-
1. Perform file modifications directly in the target `repos/<name>/` directory trees.
|
|
21
|
-
2. Maintain documentation and type integrity across boundary contracts.
|
|
22
|
-
3. Verify changes locally within each modified repository using `rnex exec` or targeted test runners:
|
|
23
|
-
```sh
|
|
24
|
-
rnex exec npm test
|
|
25
|
-
# or targeted:
|
|
26
|
-
cd repos/<name> && npm test
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
## 4. Git & Commit Hygiene
|
|
30
|
-
1. Member repositories are autonomous Git repositories:
|
|
31
|
-
- Commit changes independently within each member repository root:
|
|
32
|
-
```sh
|
|
33
|
-
cd repos/<name> && git add -A && git commit -m "feat: <description>"
|
|
34
|
-
```
|
|
35
|
-
- Never commit member repository source code directly to the Repo Nexus workspace root.
|
|
16
|
+
Execute the referenced workflow across affected member repositories. Maintain boundary contracts, run targeted test suites, and commit changes independently within each member repository root.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Operational Task: Karpathy LLM Wiki Ingestion
|
|
2
|
+
|
|
3
|
+
You are tasked with executing the knowledge ingestion and atomic decomposition workflow for the Karpathy LLM Wiki.
|
|
4
|
+
|
|
5
|
+
## Context & Inputs
|
|
6
|
+
- Target Scope: Curated wiki directory (`wiki_dir`, default: `.rnex/wiki/`)
|
|
7
|
+
- Intake Sources: Configured raw intake directory (`raw_dir`, default: `./docs`) and synchronized member repository READMEs
|
|
8
|
+
- Workspace Manifest: `rnex.yaml` and `.local.rnex.yaml`
|
|
9
|
+
- AI Instructions: `.rnex/ai-instructions.md`
|
|
10
|
+
|
|
11
|
+
## Skill & Workflow Router
|
|
12
|
+
1. Read the operational skill requirements in `.rnex/plugins/karpathy-llm/skills/rnex-wiki-ingest/SKILL.md`.
|
|
13
|
+
2. Follow the atomic decomposition and ingestion protocol strictly in `.rnex/plugins/karpathy-llm/workflows/rnex-wiki-ingest.md`.
|
|
14
|
+
3. Follow architectural and behavioral constraints in `.rnex/plugins/karpathy-llm/rules/rnex-behavioral.md`.
|
|
15
|
+
4. Adhere to mandatory session startup, routing protocols, and global rules in `.rnex/ai-instructions.md`.
|
|
16
|
+
5. Do NOT invent new frontmatter schemas, skip atomic decomposition, or alter source materials directly.
|
|
17
|
+
|
|
18
|
+
Decompose intake documents into atomic, interlinked wiki pages with typed frontmatter relations. Update the master index and append a timestamped entry to the operation log.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Operational Task: Karpathy LLM Wiki Lint & Graph Audit
|
|
2
|
+
|
|
3
|
+
You are tasked with auditing graph integrity, validating bidirectional relations, and repairing links for the Karpathy LLM Wiki.
|
|
4
|
+
|
|
5
|
+
## Context & Inputs
|
|
6
|
+
- Target Scope: Curated wiki directory (`wiki_dir`, default: `.rnex/wiki/`)
|
|
7
|
+
- Workspace Manifest: `rnex.yaml` and `.local.rnex.yaml`
|
|
8
|
+
- AI Instructions: `.rnex/ai-instructions.md`
|
|
9
|
+
|
|
10
|
+
## Skill & Workflow Router
|
|
11
|
+
1. Read the operational skill requirements in `.rnex/plugins/karpathy-llm/skills/rnex-wiki-lint/SKILL.md`.
|
|
12
|
+
2. Follow the multi-step audit and graph reconciliation protocol in `.rnex/plugins/karpathy-llm/workflows/rnex-wiki-lint.md`.
|
|
13
|
+
3. Follow architectural and behavioral constraints in `.rnex/plugins/karpathy-llm/rules/rnex-behavioral.md`.
|
|
14
|
+
4. Adhere to mandatory session startup, routing protocols, and global rules in `.rnex/ai-instructions.md`.
|
|
15
|
+
5. Do NOT invent new lint checks or execute uncompiled heuristic instructions.
|
|
16
|
+
|
|
17
|
+
Execute the referenced lint workflow across all wiki pages. Validate frontmatter relation filepaths, recompute `mentioned_in` backlinks, identify orphan pages, reconcile the master index, and record findings in the operation log.
|
|
@@ -1,34 +1,16 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Operational Task: Workspace Configuration & Health Audit
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
You are tasked with executing a comprehensive audit of the Repo Nexus workspace configuration, member repository git statuses, and active plugin states.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Context & Inputs
|
|
6
|
+
- Target Scope: Root workspace configuration, `.rnex/`, and active member repositories in `repos/<name>/`
|
|
7
|
+
- Workspace Manifest: `rnex.yaml` and `.local.rnex.yaml`
|
|
8
|
+
- AI Instructions: `.rnex/ai-instructions.md`
|
|
6
9
|
|
|
7
|
-
##
|
|
8
|
-
1.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
- Git ignore status for `repos/`, `.rnex/`, and local overrides.
|
|
13
|
-
- Active plugins and member repository registry.
|
|
10
|
+
## Skill & Workflow Router
|
|
11
|
+
1. Read the operational skill requirements in `.rnex/skills/rnex-workspace-audit/SKILL.md`.
|
|
12
|
+
2. Follow the multi-step audit and remediation protocol in `.rnex/workflows/rnex-workspace-audit.md`.
|
|
13
|
+
3. Adhere to mandatory session startup, routing protocols, and member repo boundary rules in `.rnex/ai-instructions.md`.
|
|
14
|
+
4. Do NOT execute uncompiled heuristics or alter workspace configuration outside the referenced workflow.
|
|
14
15
|
|
|
15
|
-
|
|
16
|
-
1. Check working tree cleanliness across all active member repositories:
|
|
17
|
-
```sh
|
|
18
|
-
rnex exec git status -s
|
|
19
|
-
```
|
|
20
|
-
2. Check branch tracking and unpushed/unpulled commits:
|
|
21
|
-
```sh
|
|
22
|
-
rnex exec git status -uno
|
|
23
|
-
```
|
|
24
|
-
3. Report any detached HEADs, uncommitted modifications, or untracked changes.
|
|
25
|
-
|
|
26
|
-
## 3. Reconciliation & Remediation
|
|
27
|
-
1. If any configuration issues, missing directories, or unlinked plugin assets are detected, run:
|
|
28
|
-
```sh
|
|
29
|
-
rnex status --fix
|
|
30
|
-
```
|
|
31
|
-
2. If member repositories declared in `rnex.yaml` are missing on disk, run:
|
|
32
|
-
```sh
|
|
33
|
-
rnex clone
|
|
34
|
-
```
|
|
16
|
+
Execute the audit according to the referenced workflow and report configuration integrity, working tree cleanliness, and active plugin health.
|