summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authortanaka takashi <isazaka@gmail.com>2026-08-10 00:57:30 +0900
committertanaka takashi <isazaka@gmail.com>2026-08-10 00:57:30 +0900
commit6394dfcc50fb1804ab07be309d940017eb11ef7d (patch)
treeefaf80787e9a205c6758c4c7a541077b2dbd53ce /tests
parente4a951d8b953c37b9078a48bce43cac6fd09edac (diff)
feat(skills): add uv-assisted Python workflow
Add a concise Japanese companion prompt that asks the model to be approachable, clarify uncertainty, select available skills and tools, verify results, and report the next useful action without adding excessive context. Add the standard skills/python-via-uv/SKILL.md package and UI metadata. The workflow uses uv python find offline to resolve an interpreter, then asks the Broker to launch the separately approved Python executable. It deliberately avoids uv run because the v1 OS child-process restriction must reject descendants created directly by uv. Support standard skills/<name>/SKILL.md directories while retaining legacy top-level Markdown loading. Skip reparse-point skill directories, load deterministically, package the complete skills tree, and avoid loading nested reference Markdown as independent skills. Validation: skill-creator quick_validate PASS; uv 0.11.23 resolved Python and the two-stage Python execution printed UV_BROKER_TWO_STAGE_OK. Release build passed with 0 warnings/errors; Core tests passed 49/49 with skip 0. The 1.0.0 Bundle and manifest were regenerated with the prompt and Skill.
Diffstat (limited to 'tests')
-rw-r--r--tests/Agent.Core.Tests/ConfigurationTests.cs13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/Agent.Core.Tests/ConfigurationTests.cs b/tests/Agent.Core.Tests/ConfigurationTests.cs
index 7ef4afb..2c52b0c 100644
--- a/tests/Agent.Core.Tests/ConfigurationTests.cs
+++ b/tests/Agent.Core.Tests/ConfigurationTests.cs
@@ -42,6 +42,19 @@ public sealed class ConfigurationTests
Assert.Equal("http", result.Transport);
}
+ [Fact]
+ public void SkillLoader_supports_legacy_markdown_and_standard_skill_directories()
+ {
+ using var directory = new TestDirectory();
+ directory.File("skills/legacy.md", "legacy skill");
+ directory.File("skills/python-via-uv/SKILL.md", "standard skill");
+ directory.File("skills/python-via-uv/reference.md", "must not be loaded as a skill");
+
+ string[] skills = SkillLoader.Load(Path.Combine(directory.Path, "skills"));
+
+ Assert.Equal(["legacy skill", "standard skill"], skills);
+ }
+
private static string CreateValidConfiguration(TestDirectory directory)
{
directory.File("prompts/user-system.md", string.Empty);