agentleFS
emtcmcaemtcmca/claude-for-legal-billing/skills/customize/SKILL.md

customize

Skill1 starsChanged 3 months agoMITView on GitHub

Guided customization of your billing practice profile — change one thing without re-running the whole cold-start interview. Adjust rates, billing data path, invoice settings, panel behavior, attorney profiles, or task code preferences. Does not create clients — new clients are created on their first time entry. Use when the user says "change my [thing]", "update my rate", "edit my billing config", or "customize".

40 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use add-discord, add-slack and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • MicrosoftSkill

    add-discord

    Add Discord bot channel integration via Chat SDK.

    Also in 11 projects that use this

  • MicrosoftSkill

    add-slack

    Add Slack channel integration via Chat SDK.

    Also in 11 projects that use this

  • +10 more from microsoft

The file

We split this skill into the rules it gives an agent

6 rules. 0 are common, 0 are distinctive, and 6 are very specific to this project.

  • 0

    Common

    Most of the 37 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read ~/.claude/plugins/config/claude-for-legal/billing/CLAUDE.md.

    line 27
  2. Very specific:

    When Activity logging: enabled and the attorney confirms the removal, say: "Activity logging depends on the session timer, so it stops …

    line 87
  3. Very specific:

    After writing, re-read settings.json and confirm which hook events remain.

    line 94
  4. Very specific:

    If the user wants to change the firm name or address, note: "Firm name is shared with other claude-for-legal plugins via company-profile.md.

    line 102
  5. Very specific:

    Never delete an attorney or client profile — if they want to "remove" someone, set their status to inactive and explain what that means

    line 112
  6. Very specific:

    Never renumber issued invoices — the Next invoice number only affects future invoices

    line 113

“Common” is measured: kept by at least 6 in 10 of the 37 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/billing-legal:customize

When this runs

The user wants to change something in their billing configuration without re-running the full cold-start interview.

Instructions

Preflight - read /billing-legal:billing-guardrails first. It carries the approval gate, the append-only record rule, UTBMS field discipline, and the boundary on what this plugin records rather than decides. Where it conflicts with the steps below, the stricter rule wins.

1. Read config

Read ~/.claude/plugins/config/claude-for-legal/billing/CLAUDE.md. Get billing_data_path. If [PLACEHOLDER] values are present, stop:

You haven't run setup yet. Run /billing-legal:cold-start-interview first — customize is for adjusting a profile you already have.

2. Show the customizable map

List what can be changed, with current values:

Billing profile — customizable settings:

Firm info
  • Firm name: [current]
  • Billing address: [current]
  • Billing email: [current]
  • Remittance instructions: [current]

Invoices
  • Invoice prefix: [current]  (e.g., INV-2026-001)
  • Next invoice number: [current]
  • Task codes: [required / optional / hidden]

Panel & automation
  • End-of-session billing panel: [enabled / disabled]
  • Auto-detect active matter: [enabled / disabled]
  • Budget warning threshold: [pct]%

Billing data
  • Data path: [current path]  (change to move to/from shared folder)

Attorneys — [N configured]
  • [attorney name]: $[rate]/hr, [increment]h increment
  • [Run /billing-legal:rate-card to manage rates and overrides]

Clients — [N configured]
  • [Run /billing-legal:rate-card --client <slug> to manage client settings]

What would you like to change?

3. Make the change

On user input, identify the section and field. Show the current value, ask for the new value, explain what changes downstream, confirm, write it.

Common changes and their downstream effects:

  • Billing data path: Moving to a shared folder. Confirm: "I'll update the config to point to [new path]. You'll need to manually move your existing attorneys/, clients/, time-register.yaml, and invoices/ directory to the new path. Do that before your next time entry. Confirm the path change? [Y/n]"
  • Invoice prefix: "New entries will use the new prefix. Existing invoices keep their original prefix — this won't retroactively renumber them."
  • Task codes required → optional: "Future time entries won't require a task code, but existing entries and invoices aren't changed."
  • Budget warning threshold: "The billing panel will warn at [new pct]% of a client's budget cap going forward."
  • Disabling the billing panel: "The end-of-session prompt will no longer appear. You'll need to run /billing-legal:billing-status or /billing-legal:time-entry manually to log time. I'll remove both the Stop hook and the UserPromptSubmit hook from your settings.json — leaving either in place would keep creating timer files in .sessions/ or producing stale block decisions. Want me to remove both? [Y/n]"

    Activity logging depends on the panel. activity-log.ps1 exits unless a session timer file exists, and timer files are created only by the UserPromptSubmit hook you are about to remove. So disabling the panel makes activity logging inert while the config still reads enabled — it would fire on every tool call and record nothing.

    When Activity logging: enabled and the attorney confirms the removal, say: "Activity logging depends on the session timer, so it stops working too. I'll set Activity logging: disabled and remove the PostToolUse hook as well, so the config matches what actually runs. Keep it registered instead? [Y/n]" Default to removing it. If they keep it, write Activity logging: enabled (inactive - panel disabled) so the config does not claim a capability it cannot deliver.

    After writing, re-read settings.json and confirm which hook events remain. Report them back. The removal is an instruction, not an enforced operation, and a partial removal leaves litter that nothing else detects.

  • Enabling the billing panel (was disabled): Walk through the hook setup (same as cold-start Phase 6).

4. For shared-profile changes

If the user wants to change the firm name or address, note: "Firm name is shared with other claude-for-legal plugins via company-profile.md. I'll update it there so the change flows everywhere. Confirm? [Y/n]"

5. Close

Done. Your next output will reflect the change. Run /billing-legal:customize anytime to adjust.


Guardrails

  • Never delete an attorney or client profile — if they want to "remove" someone, set their status to inactive and explain what that means
  • Never renumber issued invoices — the Next invoice number only affects future invoices
  • Flag if a rate change would affect already-pending (but not yet approved) entries: "You have [N] pending entries for [client] at the old rate. Do you want to update those to the new rate, or keep them at the rate they were logged at? (Best practice: keep them as logged)"

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.