agentsclimarketplace

Michat skill implementation

Skill filmicgaze/MiChat-desktop/.codex/skills/michat-skill-implementation

Windows desktop chat client for profile-based agents with gated local tools and skills.

Install
npx -y skills add filmicgaze/MiChat-desktop --skill michat-skill-implementation

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Repo guidance for implementing a new MiChat agent skill and its tool wiring.

SKILL.md

2.4 KB, 518 tokens by cl100k_base, as published. Nobody here has run it

Architecture assumptions

  • MiChat is profile-driven: profiles/<profile>/ holds profile.json, system_prompt.txt, skills/, ui.json.
  • Agent skills are SKILL.md files under profiles/<profile>/skills/<slug>/SKILL.md.
  • Tool capability boundaries are enforced by toolsets + enabled_toolsets in profile.json.
  • MiChat requires a profile; no legacy root ./skills fallback exists.

Implementation loop

Follow the steps in order. Do not improvise or skip steps. If anything is unclear or missing, ask for clarification before editing.

A) Decide placement

  • Decide if this is a new toolset or belongs to an existing toolset.
  • Choose which profiles should get it (toolset enablement + skill file).

B) Implement code

  • Add/update the Python tool implementation.
  • Register the tool in the correct toolset (toolsets registry).
  • Ensure only profiles that enable the toolset can see/use the tool.

C) Add MiChat agent skill files

  • Create/edit SKILL.md under the relevant profile(s) only.

  • YAML frontmatter: require only name and description.

  • If allowed_tools is used (per spec), list only tool names that exist in enabled toolsets for that profile.

D) Wire and sanity check

  • Ensure manifest injection lists available skills for the active profile.
  • Ensure read_skill reads from the selected profile skills dir only.

E) Output verification steps (for Nicholas)

  • Provide exact commands, e.g.:
    • python -m michat.shell --profile <name> --debug
    • python -m michat.chat --profile <name> --debug
  • State exactly what to check (tool list, skill list, expected behavior).
  • Use the repo’s current run entrypoints; the examples above are current as of this repo state.

House rules / constraints

  • Follow the steps above as written; do not improvise or skip steps.
  • Ask for clarification when information is missing or ambiguous.
  • Never create/copy secrets or tokens; never commit token.json or client_secret*.json.
  • Do not use AppData or write outside the repo/exe folder; runtime state belongs under ./data and profile resources under profiles/<profile>/...
  • Keep changes small and reversible; avoid refactors unless asked.
  • If behavior depends on runtime UI, ask Nicholas to run and paste logs instead of guessing.

What ships with it: 1 file

246 B alongside SKILL.md

agents/

Keep looking

Skills are one crate of 327,069. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.