feat(mobile): list and invoke skills in the slash command composer - #6656
Conversation
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Executive SummaryIncremental review of the PR's only new commit (7738d15) found no issues: it renames the Files Reviewed (17 files)
Previous Review Summaries (6 snapshots, latest commit 585564a)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit 585564a)Status: No Issues Found | Recommendation: Merge Executive SummaryIncremental review of commit 585564a, which only adds the missing Files Reviewed (1 file)
Previous review (commit 474e26d)Status: No Issues Found | Recommendation: Merge Executive SummaryIncremental review of commit 474e26d, which carries the wrapper's catalog bound status through to the client, found no new issues; the status propagates across the wrapper, DO cache, SDK, and the mobile notice, with legacy-array and malformed-status fallbacks intact. Files Reviewed (109 files)
Previous review (commit c9ae65d)Status: No Issues Found | Recommendation: Merge Incremental review of the follow-up commit found only documentation and test-name updates; no new issues were introduced. Files Reviewed (3 files)
Previous review (commit c9fa9d2)Status: 2 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)SUGGESTION
Files Reviewed (13 files + 86 locale catalogs)
Fix these issues in Kilo Cloud Previous review (commit a2016c7)Status: No Issues Found | Recommendation: Merge Files Reviewed (5 files)
Previous review (commit b35c11d)Status: 2 Issues Found | Recommendation: Address before merge Executive SummaryA duplicate Overview
Issue Details (click to expand)CRITICAL
WARNING
Files Reviewed (100 files)
Reviewed by deepseek-v4.1-flash · Input: 0 · Output: 0 · Cached: 0 Review guidance: REVIEW.md from base branch |
0ab8bee to
a2016c7
Compare
|
kilo-review — independent audit of the published diff. Status: 2 Issues
|
|
bot: Accepted. Pushed 3726219 (kwf What changed:
|
3726219 to
c9fa9d2
Compare
…unded The wrapper bounds the catalog to the shared 256-command and 512 KiB limits and drops non-skill rows when it must. It wrote that only to the wrapper log, so a reader whose menu was missing commands was never told. The wrapper now returns the bound status beside the catalog and sends it in the commands.available payload. The DO caches it with the catalog and hydrates connecting clients with it. The SDK surfaces it as availableCommandsCatalogStatus, and the mobile composer renders an accessible notice beside the open slash menu: one copy for dropped rows, and a separate copy for a catalog the skill rows alone push over a bound (that catalog is complete, so the dropped-rows copy would lie). Both notices land in all 86 locale catalogs.
…e test session-detail-content reads availableCommandsCatalogStatus, so the test's mock atom map needs it next to availableCommands; without it the mounted render reads .value of undefined.
…catalog does The catalog-bound notices from 474e26d were written outside the translation pass. In 16 catalogs they named a skill or a command with a different word than the Skill badge and the command copy on the same slash menu. Use each catalog's own term.
|
Audit findings:
|
Changelog for users
/in the mobile chat composer now lists the session's skills next to the commands.Skillbadge, so it reads as a skill rather than a plain command.Changelog for maintainers
source: 'skill'rows beforecommands.available.boundSlashCommandCatalogenforces the shared 256-command and 512 KiB limits, dropping non-skill rows from the end first.dropped: 0./name; the row adds only theSkillbadge and a skill-specific accessibility label.agentChat.slashCommands.skillBadgeandagentChat.slashCommands.useSkillCommandlanded in all 86 locale catalogs, so no copy is pending translation.writeSessionValueSync, satisfying the storage-key compliance gate.E2E proof
The two device scenarios could not be captured on this host: the Android device resource did not start because no Android SDK is installed (
e2e-mobile-app/resource.log):The live
/list capture (skill row with theSkillbadge) and the post-invocation session capture are skipped, pending verification on a device host. The backend E2E run passed (checks.log):The wrapper catalog payload is asserted by
services/cloud-agent-next/wrapper/src/kilo-api.test.ts:Owner request
Open findings (not fixed here)