Skip to content

lark-cli update reports Skills synced but installed Skill tree has unresolved references #2139

Description

@elenafly-eng

lark-cli update reports Skills synced but installed Skill tree has unresolved references

Summary

lark-cli update --json reported that 27 official AI Skills were successfully synced, but the installed Skill tree immediately after that update was missing 165 files referenced by its installed SKILL.md files. Those 165 files existed in the official v1.0.81 source tag.

This can break Agent workflows only when they try to load one of the missing guides or scripts, while the CLI binary and basic commands still appear healthy.

Correction to the original report

The original report counted 183 unresolved paths. That figure included 18 false positives caused by the first scanner dropping the ../<skill>/ prefix from valid cross-Skill links before resolving them.

Therefore:

  • The corrected missing-file count is 165, not 183.
  • The lark-calendar and lark-minutes cross-Skill examples were incorrect and are withdrawn.
  • The official v1.0.81 sources already use valid cross-directory paths for those examples.

Sorry for the noise caused by those incorrect examples.

Environment

  • lark-cli: 1.0.81
  • Updated from: 1.0.72
  • Installation: npm global install
  • Platform: macOS arm64
  • Skill root: $HOME/.agents/skills

Raw update output

This is the full raw output captured from the original update run:

{
  "action": "updated",
  "changelog": "https://github.com/larksuite/cli/blob/main/CHANGELOG.md",
  "current_version": "1.0.81",
  "latest_version": "1.0.81",
  "message": "lark-cli updated from 1.0.72 to 1.0.81",
  "ok": true,
  "previous_version": "1.0.72",
  "skills_action": "synced",
  "skills_summary": {
    "added": 0,
    "official": 27,
    "skipped_deleted": 0,
    "updated": 27
  },
  "url": "https://github.com/larksuite/cli/releases/tag/v1.0.81"
}

Evidence from the post-update install

Immediately after the successful update, the installed lark-mail/references/ directory contained only these five files:

  • lark-mail-reply-all.md
  • lark-mail-rules.md
  • lark-mail-message.md
  • lark-mail-reply.md
  • lark-mail-send-as.md

However, the installed lark-mail/SKILL.md referenced additional same-Skill files such as:

  • references/lark-mail-send.md
  • references/lark-mail-draft-create.md

Those files existed under skills/lark-mail/references/ in the official v1.0.81 tag but were absent from the local tree captured immediately after the update.

A corrected comparison found:

  • 165 referenced local files missing after update.
  • All 165 were recoverable from the official v1.0.81 tag.
  • The previously reported 18 cross-Skill paths were scanner false positives and are not part of this issue.

The current local Skill tree was later repaired manually, so rerunning a scanner against the current machine no longer represents the immediate post-update state.

Expected behavior

When the updater returns skills_action: "synced" and reports all 27 official Skills updated, the installed artifact should contain every file referenced by those Skills.

Current root-cause status

The user-visible symptom and post-update file state are confirmed. The underlying cause is not yet confirmed. Possible areas to inspect include the v1.0.81 Skill sync artifact and incremental sync behavior when updating from 1.0.72.

Suggested fix

  1. Verify that the Skill sync payload used by lark-cli update contains the complete release-tag tree.
  2. Check incremental sync behavior when updating an existing installation.
  3. Add a post-package or post-sync integrity test that resolves installed relative references.
  4. Return a failed or partial sync result if referenced files are absent.

Acceptance criteria

  • Updating an existing 1.0.72 installation to 1.0.81 or a fixed later release yields 0 unresolved installed references.
  • A fresh installation of the same release also yields 0 unresolved installed references.
  • The integrity check covers references/, scripts/, assets/, and explicit relative Markdown links without stripping cross-Skill path prefixes.
  • A deliberately missing referenced resource makes the packaging or update test fail.
  • CLI/API/auth behavior remains unchanged; this issue is limited to the installed AI Skill artifact.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdomain/coreCLI framework and core libraries

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions