37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
from __future__ import annotations
|
|
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
|
|
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
|
|
|
|
class AckSkillContentTests(unittest.TestCase):
|
|
def test_ack_skill_owns_resources_without_modifying_agent_instructions(self) -> None:
|
|
content = (REPO_ROOT / "skills" / "ack" / "SKILL.md").read_text(encoding="utf-8")
|
|
|
|
for expected in (
|
|
"skiff init ack --project <project-root>",
|
|
"docs/ack/project.md",
|
|
"docs/ack/tasks.yaml",
|
|
"tasks: []",
|
|
"validate_tasks.py",
|
|
"references/kickoff.md",
|
|
"不要修改项目的 `AGENTS.md`",
|
|
"当前会话担任 Coordinator",
|
|
):
|
|
self.assertIn(expected, content)
|
|
|
|
def test_ack_skill_is_explicit_only(self) -> None:
|
|
metadata = (REPO_ROOT / "skills" / "ack" / "agents" / "openai.yaml").read_text(
|
|
encoding="utf-8"
|
|
)
|
|
|
|
self.assertIn('display_name: "ACK"', metadata)
|
|
self.assertIn("allow_implicit_invocation: false", metadata)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|