When a harness has no README.md, skill_intro is an empty string.
The previous code unconditionally appended " - ..." producing malformed
output like "Command-line interface for TestApp - ..." in SKILL.md
YAML frontmatter.
Also fixed: when skill_intro is non-empty but <=100 chars, no ellipsis
is appended (previously appended to complete text).
Applied the same fix to both:
- cli-anything-plugin/skill_generator.py (line 118)
- mubu/agent-harness/skill_generator.py (line 238)
Updated test_harness_without_readme to assert skill_description is
well-formed when intro is empty.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The third regex pattern for apt-get install contains the substring "apt",
so the guard `if "apt" in pattern` matched it first and returned
`"apt install <pkg>"` instead of `"apt-get install <pkg>"`.
Fix by checking `"apt-get" in pattern` before `"apt" in pattern`.
Also adds backtick delimiters to the apt-get pattern for consistency
with the other two patterns.
Same fix applied to the duplicate in mubu/agent-harness/skill_generator.py.
Regression test added to test_skill_generator.py covering the apt-get case.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Deduplicate logical document paths by freshest metadata so open-path resolves real Mubu history duplicates consistently. Overlay backup-driven show/link output with metadata titles and doc paths, and default new public state to ~/.config/mubu-cli while preserving legacy fallback.
Update the package metadata, generated skill output, test expectations, and registry entry so the contribution PR reflects the generalized daily-folder behavior in the published harness version.
Require an explicit daily folder reference or MUBU_DAILY_FOLDER for daily helpers, scrub personal examples from docs and generated skill content, and harden live E2E checks for environment-specific SSL failures.