ramekin: mount jj config, drop pi entries now in the allowlist
Ramekin no longer staples the git and jj config in, and its pi allowlist
grew to cover keybindings and extensions. Git stays out on purpose: jj
carries its own identity here, and the https→ssh rewrites break pi's
package clones in a container with no ssh.

Assisted-by: Claude Opus 5 via Claude Code
change mpuxxrsyrllruzrrrztsttmkyxzmqqtx
commit 96f9b77c7eae20c8ad25dc854773c16cd33951a3
author Alpha Chen <alpha@kejadlen.dev>
date
parent qwvtxwmp
diff --git a/.config/ramekin/config.kdl b/.config/ramekin/config.kdl
index 31b0fec4..628fe1c0 100644
--- a/.config/ramekin/config.kdl
+++ b/.config/ramekin/config.kdl
@@ -20,17 +20,23 @@ profile "pi-bedrock" {
 mounts {
   // Agent config that sits outside the binary allowlist but is still config,
   // kept deliberately. Targets derive from the ~/ source.
-  "~/.pi/agent/keybindings.json"
-  "~/.pi/agent/extensions"
   "~/.claude/statusline.sh"
   "~/.claude/output-styles"
 
+  // Pi's settings.json points `skills` here rather than at ~/.pi/agent/skills,
+  // so the container needs the path the setting names.
+  "~/.dotfiles/ai/skills"
+
   // Devlog entries are written from inside the container by the devlog skill,
   // so this rides in writable and persists across sessions.
   "~/.claude/devlog" writable=#true
 
-  // Machine-local mounts. The jj repo registry is writable so jj can record
-  // repos; the git and jj config staples come from the binary.
+  // jj is the version control in here, and it carries its own identity and
+  // signing config, so it needs nothing from git. ~/.config/git deliberately
+  // stays out: its https→ssh rewrites can't be followed (no ssh binary, no
+  // keys) and can't be revoked either, since insteadOf only accumulates.
+  "~/.config/jj"
+  // Writable so jj can record repos it sees.
   "~/.config/jj/repos" writable=#true
 
   // ranger state and pi's pinch dir don't exist on this machine yet, so both