feat(skiff): replace opencode target with agents standard dir

- targets: cursor, claude, codex, agents (~/.agents/skills, .agents/skills)
- agents dir covers OMP native discovery; drop omp/opencode targets
- project-level agents/cursor/codex share .agents/skills via idempotent symlinks
- migrate local state: remove ~/.config/opencode/skills links, reinstall into ~/.agents/skills
This commit is contained in:
2026-08-24 14:25:08 +08:00
parent 47bd454fa3
commit a8efa5f359
11 changed files with 131 additions and 18 deletions
+4 -4
View File
@@ -78,7 +78,7 @@ class SelectorTests(unittest.TestCase):
"ack",
"builtin",
installed=False,
readonly_status="全局: cursor,claude,codex,opencode",
readonly_status="全局: cursor,claude,codex,agents",
)
]
screen = Mock()
@@ -101,7 +101,7 @@ class SelectorTests(unittest.TestCase):
if call.args[0] == 3
)
self.assertIn("[ ] ack", title)
self.assertIn("全局: cursor,claude,codex,opencode", title)
self.assertIn("全局: cursor,claude,codex,agents", title)
self.assertNotIn("初始化", title)
def test_selector_renders_description_on_indented_second_line(self) -> None:
@@ -370,7 +370,7 @@ class SelectCommandTests(unittest.TestCase):
other.mkdir()
global_dirs = {
target: root / target / "skills"
for target in ("cursor", "claude", "codex", "opencode")
for target in ("cursor", "claude", "codex", "agents")
}
for directory in global_dirs.values():
directory.mkdir(parents=True)
@@ -385,7 +385,7 @@ class SelectCommandTests(unittest.TestCase):
note = cli._global_installation_note(
"ack",
expected,
["cursor", "claude", "codex", "opencode"],
["cursor", "claude", "codex", "agents"],
)
self.assertEqual(note, "全局: cursor;全局同名冲突: claude")