agentleFS
xmtpxmtp/libxmtp/.agents/skills/writing-typescript/SKILL.md

writing-typescript

Skill127 starsChanged 11 days agoMITView on GitHub

Use when writing or reviewing TypeScript or JavaScript in this repository; covers the pnpm task graph, local bindings, shared lint rules, and formatting.

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

Files
SKILL.md

Writing TypeScript and JavaScript

The repository has one root pnpm workspace. Run dev/nix-shell 'just install-js' once before package work. Package scripts use the root task graph. It does not build native bindings. Use the relevant just js, just cli, just web-chat, or just docs recipe when a task needs Node or WASM bindings; those recipes stage the local bindings first. They build the bindings with cargo (debug) by default; with XMTP_SDK_BUILD=nix they copy the release-profile Nix products, as CI does, which is faster when you do not edit the Rust SDK. Use dev/nix-shell '<command>' for a focused package command. Do not run pnpm outside the Nix shell.

Shared TypeScript configs are in dev/js/. Oxlint and Oxfmt configs stay at the repository root for tool and editor discovery. Run checks through package scripts or just recipes. The shared Oxlint config checks correctness, supported type-checked rules, source aliases, type-only imports, and selected type-safety rules. Test overrides allow loose mocks and fixtures, but still check unused code and promise handling. Keep test exceptions in the shared config instead of copying rule lists into packages.

JavaScript formatting is separate from just lint-config. Use dev/nix-shell 'just format-js' to write formatting or dev/nix-shell 'just lint-js-format' to check it. Read the relevant package AGENTS.md for build order, test commands, and behavior rules.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.