Agent Communication Language
DRANK
Agent Communication Language (ACL) というものを作っている。これは何かというと、Claude Code のようなAIエージェントに指示を出すときに、指示の対象、処理、詳細をできるだけ明確にするためのDSLだ。たとえば、次のような形で指示を出す。fix("failing tests") # Fix issues refactor("auth module", "extract logic") # Refactor code test("integration/**") # Run tests project.build() # Build projectACLの文法の基本形は scope.action(details) だ。scope が省略された場合はグローバル関数という扱いになる。たとえば、project.build() という指示はプロジェクトのビルドを指示する。これらの関数は、次のように定義される。fn fix(issue): void { description: "Analyze and fix problems" action: [ "Diagnose root cause of the issue", "Implement solution", "Verify fix works correctly" ] } fn refactor(targets, direction): void { description: "Refactor safely with tests" action: [ test(), "Refactor code according to direction", test()…