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 reports that the CLI and 27 official AI Skills were successfully synced, but the installed Skill tree can contain many unresolved relative references.

This affects Agent workflows that load a referenced guide or script after the main SKILL.md has triggered.

Environment

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

Steps to reproduce

  1. Run lark-cli update --json.
  2. Confirm the result reports skills_action: "synced", official: 27, and updated: 27.
  3. Scan every installed lark-*/SKILL.md and resolve local Markdown/resource references relative to that Skill directory.

Actual behavior

Immediately after the successful update:

  • 183 referenced paths did not resolve locally.
  • 165 of those files exist in the official v1.0.81 source tag under skills/, but were not present in the synced local tree.
  • 18 references target resources that exist under another Lark Skill, but the source SKILL.md uses a same-directory relative path.

Examples:

  • lark-mail/SKILL.md references references/lark-mail-send.md, references/lark-mail-draft-create.md, and other guides that exist in the repository tag but were absent locally.
  • lark-calendar/SKILL.md references references/lark-note-detail.md, while that file exists under lark-note/references/.
  • lark-minutes/SKILL.md references references/lark-drive-upload.md, while that file exists under lark-drive/references/.

The CLI binary and basic commands remain usable, so ordinary update checks can pass while complex Agent paths fail later with file-not-found errors.

Expected behavior

A successful Skill sync should produce an installed tree in which every relative file reference from every official SKILL.md resolves.

Cross-Skill references should either use the correct ../lark-*/references/... path or be copied/generated into the referring Skill package by design.

Suggested fix

  1. Make the updater Skill payload match the files in the release tag.
  2. Add an install-artifact integrity test that scans relative links and resource paths after packaging/sync.
  3. Correct or explicitly materialize the 18 cross-Skill references.
  4. Treat unresolved references as a failed or partial Skill sync instead of returning only skills_action: "synced".

Acceptance criteria

  • Fresh install/update of v1.0.81 or a later release yields 0 unresolved references.
  • The check covers references/, scripts/, assets/, and explicit relative Markdown links.
  • A deliberately missing resource makes the packaging/update test fail.
  • CLI/API/auth behavior is 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