Skip to content

fix(skills): preserve inline task text#4372

Merged
Hmbown merged 1 commit into
Hmbown:mainfrom
nightt5879:nightt5879/issue-3915-skill-inline-task
Jul 15, 2026
Merged

fix(skills): preserve inline task text#4372
Hmbown merged 1 commit into
Hmbown:mainfrom
nightt5879:nightt5879/issue-3915-skill-inline-task

Conversation

@nightt5879

Copy link
Copy Markdown
Contributor

Summary

  • dispatch trailing task text in the same turn for $<skill> do X, /<skill> do X, and /skill <skill> do X
  • keep bare $<skill> activation armed for the next user message
  • preserve /skill install as the management command while allowing a literal install skill through $install ... and /install ...
  • carry the active skill through immediate, queued, and steer message paths exactly once

Root cause

The unified skill command path accepted trailing arguments but discarded them before activation. The /skill <name> <task> path also treated the whole raw argument string as the skill name, so it could not both select the skill and dispatch the task.

Impact

Inline skill invocations now behave as a single request instead of silently dropping the user's task. Existing bare activation and skill-management behavior remain compatible.

Validation

  • cargo fmt --all -- --check
  • cargo test -p codewhale-tui --bin codewhale-tui --locked commands::groups::skills::skills::tests -- --test-threads=1 (27 passed)
  • cargo test -p codewhale-tui --bin codewhale-tui --locked inline_skill_request_keeps_instruction_when_busy_queueing -- --test-threads=1 (1 passed)
  • CI-equivalent cargo clippy --workspace --all-features --locked -- -D warnings ... passed
  • cargo test --workspace --all-features --locked reached 6667 passed / 3 parallel-state failures; all three failures passed individually with --test-threads=1
  • cargo build --release --locked -p codewhale-cli -p codewhale-tui; both binaries start and report version 0.8.68
  • offline eval harness succeeded (6 steps, 0 tool errors)
  • version drift, provider registry, changelog sync, diff, Cargo.lock, and co-author credit checks passed

Closes #3915

Carry trailing arguments from $skill, direct slash skill invocations, and /skill <name> into the same queued message while preserving bare activation for the next turn.

Keep /skill install reserved for skill management and cover exact-name install skills plus busy queue delivery.

Fixes Hmbown#3915

Co-authored-by: Fushimi Rio <158128433+CCChisato@users.noreply.github.com>
Signed-off-by: Nightt <87569709+nightt5879@users.noreply.github.com>
@nightt5879 nightt5879 marked this pull request as ready for review July 15, 2026 14:14
@nightt5879 nightt5879 requested a review from Hmbown as a code owner July 15, 2026 14:14
@nightt5879

Copy link
Copy Markdown
Contributor Author

@codex review

Please review final head 66a6edf, including inline task dispatch, bare activation compatibility, the exact-name install skill collision, and queued skill delivery.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 👍

Reviewed commit: 66a6edf5bb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@Hmbown Hmbown merged commit 9035890 into Hmbown:main Jul 15, 2026
16 checks passed
@Hmbown

Hmbown commented Jul 15, 2026

Copy link
Copy Markdown
Owner

Thank you, @nightt5879 and @CCChisato — merged for v0.8.68 with the original commit and co-author credit preserved. The release candidate keeps the additional queue-delivery regression and records both contributors in the release notes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ux(skills): $skill <task> and /<skill> <task> silently discard the task text

2 participants