Skip to content

Feature request: minimal / selective skill install mode #772

@qiankunli

Description

@qiankunli

Context

The current install command pulls all 24 agent skills:

npx skills add larksuite/cli -y -g

For users who only interact with a small subset of Lark domains (e.g. calendar + IM + docs), every additional skill still ends up in the agent's available-skills system prompt because most agents (Claude Code, Codex, etc.) load all installed skill metadata up front. With 24 entries, each carrying name + description, this consumes a meaningful chunk of context window even when most skills are never invoked in practice.

Problem

  • The all-or-nothing install assumes the user wants the full surface
  • For non-Lark-heavy workflows, ~20 skill descriptions become persistent context noise
  • Removing them one-by-one after install is awkward (and easy to redo wrong on next sync)

Request

A minimal / selective install mode, so the user can opt in to the skills they actually need. Some shapes that would solve this:

  1. Allowlist flag:

    npx skills add larksuite/cli -y -g --include lark-calendar,lark-im,lark-doc,lark-shared
    
  2. Denylist flag (when you want most but not all):

    npx skills add larksuite/cli -y -g --exclude lark-okr,lark-approval,lark-attendance
    
  3. Named presets (e.g. core, productivity, full), where core is something like lark-shared + lark-im + lark-calendar + lark-doc.

lark-shared is described as auto-loaded by all other skills — that one would still need to be pulled in implicitly under any selective mode.

Why not just delete after install

  • npx skills add larksuite/cli -y -g is documented as the install path; running it again to update would re-add the deleted ones unless there is local state that remembers user choices
  • A first-class flag makes the intent explicit and stable across machines / re-installs

Happy to test if a prototype lands. Thanks for the work on this CLI — token efficiency on the AI Agent path is one of the better design choices in the project.

Metadata

Metadata

Assignees

No one assigned

    Labels

    domain/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