원클릭으로
setup
Guided onboarding: configure your legal root, seed content, and set up your practice profile. Run once to get started.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Guided onboarding: configure your legal root, seed content, and set up your practice profile. Run once to get started.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Legal work across any practice area — contracts, data privacy, employment, IP, corporate, securities, financial services, litigation, antitrust, M&A, tax, real estate, healthcare, government contracts, AI, insurance, international trade, consumer protection, bankruptcy, environmental. Composes five primitives (read, research, evaluate, draft, remember) to answer legal questions, research law and past decisions, review and redline documents, evaluate clauses against positions, draft memos and correspondence, manage matters and entities, and build institutional knowledge. Use PROACTIVELY for ANY legal, regulatory, or compliance request — anything mentioning a law, regulator, contract, clause, counterparty, deal, dispute, filing, policy, IP asset, or a question calling for legal judgment.
Read-only deadline sweep across your open matters: reads the deadlines: frontmatter on every matter file and reports what's overdue, due within a window (default 60 days), and upcoming — auto-renewal windows, termination-notice deadlines, sub-processor objection periods, filing and milestone dates. One sorted table; changes nothing. Missed dates are the practice's #1 malpractice vector. Use weekly, or whenever you ask 'what's due', 'what deadlines are coming up', 'anything expiring', 'what do I owe across my matters'.
Health check for a Counsel OS install: legal-root config, vault structure, plugin version vs latest, law-content currency, optional dependencies (pandoc, python-docx, bun, Playwright Chromium, qmd), browse daemon, backups, vault git, search-index freshness, vault consistency (standards ↔ library ↔ law floors), and matter-aware law impact (open matters whose law areas were refreshed after their last update) — one ✅/⚠️/❌ table with a one-line fix per finding. Pass --consistency to run only the consistency + law-impact checks (cheap pre-deal spot-check). Read-only: reports and recommends, never changes anything. Use monthly, after /counsel-os:update, or when something seems off.
Practice analytics: matter and counterparty trends, knowledge-base health, and harvesting promotable knowledge from matters (archetype/corridor playbooks, proven clause language) — plus, at sufficient volume, position drift and exception-rate analysis. Use quarterly, or every ~10 closed matters.
Refresh USER-OWNED law content in the vault against current law: custom law areas you created, files marked managed-by: user, or the entire law library when config.md sets law_management: user. Verify-and-patch with primary-source citations, supervised review, and dated last-reviewed attestations. Plugin-managed law areas are excluded — those are refreshed upstream and arrive via /counsel-os:update. Use when your own law files are stale, after adding a custom law area, or on a periodic (e.g., quarterly) cadence.
Skill-first update: refresh plugin methodology through the install path, then review law and practice content changes for your vault.
| name | setup |
| description | Guided onboarding: configure your legal root, seed content, and set up your practice profile. Run once to get started. |
You are helping a user set up Counsel OS from scratch. This single skill handles everything: choosing where to store content, seeding the legal framework, and walking through practice profile configuration. The goal is to go from zero to a working Counsel OS in one session.
Counsel OS setup is skill-first and capability-based. Do not assume only one host or operating system. First determine what this session can do:
echo ok?~/.counsel-os/legal-root?bun, pandoc, python3, Microsoft Word, or other optional tools available?query MCP tool (e.g. qmd's query) available this session? Secondarily, is the qmd CLI on PATH (command -v qmd)?Adapt to the answers:
Claude Code is one capable host; Cowork is usually a file-tool host without shell. Other LLM environments should follow the same capability matrix rather than a hardcoded host branch.
Adding qmd (below) needs a session restart, so an Express run can be interrupted mid-way. Before anything else, if home-directory reads are available, check for a resume marker:
cat ~/.counsel-os/setup-resume 2>/dev/null
If the marker exists and a legal root is already configured (the Step 1 detection finds a marked config.md), the user is mid-Express — they installed qmd and restarted. Resume Express; do not restart it, and do not fall into the returning-user Review/Start-fresh branch:
rm -f ~/.counsel-os/setup-resume.If there's no marker (or no configured root yet), continue normally.
Offer the fork before asking anything else:
How would you like to set up? I default to Express — about 3 minutes: where to keep your practice, a couple of identity basics, and one question about what you do, and I'll seed sensible starting positions you can edit anytime.
- Express (default) — fastest path to a working practice.
- Custom — a longer interview that walks every profile section and standard with you.
If the user doesn't express a preference, take Express. If they pick Custom, skip the Express Setup section entirely and run Custom Setup (Steps 1–7) unchanged.
Near-zero decisions: root, identity basics, one practice question. Everything seeded is a starting point the user edits later — never present it as final or as legal advice.
Run the root-selection logic in Step 1: Determine Legal Root (the Obsidian-vault detection that leads with a concrete suggestion, the placement question only if detection didn't settle it, and writing {legal_root}/config.md + the ~/.counsel-os/legal-root pointer). Do not run the qmd offer yet — that's phase 4. If an existing populated root is found, this is a returning user: hand off to the Step 1 → "If an existing legal root was found" branch instead of Express.
Ask exactly these, in one short prompt (not the full Custom interview):
Three quick basics:
- Your name?
- Your organization / firm (and your role — in-house, outside counsel, solo)?
- Primary jurisdiction?
Hold the answers for the profile you'll write in phase 3.
Ask the single tailoring question:
Last question: what kind of law do you practice, and for what kind of organization or industry? (e.g. "in-house GC at a B2B SaaS company," "employment law for small businesses," "commercial real estate.")
Then seed everything using the mechanics in Step 2: Seed Content (law areas, standards pack, methods, library, reference, matters/, memory/, entities/, browse binary + pandoc checks). Every seeded position file already carries a "Starting point, not legal advice" banner — don't add or restate it per-file; you'll point at it in the closing card.
Then write {legal_root}/practice/profile.md tailored to the answer — do not run the Custom profile interview:
---
counsel-os-type: practice
---
# Practice Profile
## Identity
{Name}, {role — e.g. General Counsel / Head of Legal} at {Organization}. In-house counsel for a SaaS / software company. {Any industry specifics from their answer.}
## Principles
Business-enabler posture: find the path to yes while managing material risk. Pragmatic — spend energy on the terms that move the needle (liability, data protection, IP, term/termination) and accept market-standard terms on the rest. Prefer mutual positions.
## Voice
Professional, plain-English. Lead with an executive summary and a clear recommendation; bullets over dense paragraphs. Direct internally, measured with counterparties.
## Escalation Thresholds
- **GREEN (proceed):** mutual, market-standard terms within the seeded positions.
- **YELLOW (one reviewer):** non-mutual liability caps, data-processing / privacy terms, IP assignment.
- **RED (senior review):** uncapped liability, broad indemnities, source-code escrow, anything touching regulated or customer data at scale.
_Emphasized law areas: data protection / privacy, IP ownership, commercial contracts, employment. These thresholds are starting points — set dollar triggers and adjust to your practice._
---
counsel-os-type: practice
---
# Practice Profile
> These are general starting-point defaults, not tailored to your practice yet and not legal advice. Tell me how you actually work and I'll refine them.
## Identity
{Name}, {role} at {Organization}. {Their practice-area / industry answer.} Primary jurisdiction: {jurisdiction}.
## Principles
Pragmatic, market-standard defaults for now. Tell me your risk posture and what you fight for first, and I'll tailor this.
## Voice
Professional, plain-English, executive-summary-first. Adjust anytime.
## Escalation Thresholds
General defaults — escalate uncapped liability, broad indemnities, and anything touching regulated or customer data; add dollar thresholds when you're ready. Placeholders; edit to your practice.
Say plainly which one you seeded: for a non-SaaS-GC answer, tell the user the positions are common market defaults and the profile is a general starting point they should tune.
Run the qmd offer exactly as in Optional tool: faster local search with qmd (Step 1) — proactive detect, offer, never block, never auto-install. If the user opts to install qmd (which requires a restart), first write the resume marker so the restart→re-run round-trip returns to Express instead of the returning-user branch:
mkdir -p ~/.counsel-os && printf 'express' > ~/.counsel-os/setup-resume
Then give them the Phase-1 install steps and continue to phase 5 on the filesystem fallback (qmd is never required to finish). On the next run, Step 0.5 picks up the marker and resumes at the qmd indexing + closing card.
[ -d "{legal_root}/.git" ] && echo "git present" || echo "no git"
git already present → keep it silently; say nothing and move on.
no git → one plain-language question, sensible default yes:
Want me to track your practice history with git, so you can see how your positions evolve? (Recommended — it stays local. I'll set it up.)
If yes, run git init, add the .gitignore from Step 6, and make the initial commit. Skip the GitHub-remote offer in Express (that's a Custom / later step).
No ceremony, no exercises. Show:
You're set up. Your practice lives at
{legal_root}— law areas, standard positions, and your profile are all editable markdown files you own.
- Every position is a starting point, not legal advice — open any file in
practice/standards/to change it, or just tell me e.g. "our data-deletion window is 30 days" and I'll update it.- Want to see it work? Run
/counsel-os:demo.
Then stop — Express is done.
The remaining steps are the Custom path — the full guided interview. Run these only when the user chose Custom (or a returning user picked "Review and update"). Express uses Step 1's root logic and Step 2's seeding mechanics but does not run the Step 3–7 interview.
Check if a legal root is already configured by running the Finding the Legal Root procedure in skills/counsel/SKILL.md. That procedure looks for an existing marked config.md containing both counsel-os-config: true and legal_root: near the working location and reports back what it finds.
Do not read config.local.md or plugin documentation files. Per-user configuration lives only in the user's vault at {legal_root}/config.md.
Check if it's already populated (has law/, practice/, memory/ with content). If so, ask:
Your Counsel OS is already set up at
{legal_root}. Would you like to: (A) Review and update your existing profile (B) Start fresh (this will overwrite your current settings) (C) Just check that everything looks good
Whichever they pick, also run the qmd detection from Optional tool: faster local search with qmd (in Step 1, below): if qmd has become usable since first setup but no collection yet covers the vault, offer Phase 2 to index it. This is the path for a user who installed qmd, restarted, and re-ran /counsel-os:setup to wire it — don't make them start fresh just to get indexed.
First, a quick read-only detection (skip silently if shell/file listing is unavailable). This lets setup lead with a concrete suggestion instead of asking blind. It NEVER installs anything and NEVER blocks — if nothing turns up, fall through to the questions below unchanged and don't mention the attempt.
# Is the Obsidian app present? (macOS / Linux desktop / flatpak locations)
ls -d /Applications/Obsidian.app "$HOME/Applications/Obsidian.app" 2>/dev/null \
|| ls -d "$HOME"/.local/share/applications/*obsidian* /var/lib/flatpak/app/md.obsidian.Obsidian 2>/dev/null
# Existing vaults: scan common roots for an .obsidian folder. This is more reliable
# than ~/Library/Application Support/obsidian/obsidian.json, which can report zero
# vaults even when some exist (iCloud vaults, newer Obsidian versions).
for root in "$HOME/Documents" "$HOME/Library/Mobile Documents/iCloud~md~obsidian/Documents" "$HOME/Dropbox" "$HOME"; do
[ -d "$root" ] && find "$root" -maxdepth 3 -type d -name .obsidian -prune 2>/dev/null | sed 's:/\.obsidian$::'
done | sort -u | head
{path} — want Counsel OS to live inside it (e.g. {path}/Counsel OS)? It'll show up in Obsidian automatically." If the user agrees, use that as the path and skip the "do you use Obsidian?" question below — detection already answered it.If detection settled the path, skip ahead to writing the config. Otherwise, ask the user where to store the framework content:
Where should Counsel OS store its framework content? This folder will contain your law areas, standard positions, practice profile, and memory.
If you use Obsidian, a good choice is a top-level folder in your vault (e.g.,
~/Documents/Obsidian Vault/Counsel OS). If you don't use Obsidian, any folder works (e.g.,~/legal/counsel-os).
Then, only if detection did not already settle it, ask one optional placement question:
Do you already use Obsidian? If so, I can place Counsel OS inside your existing vault so it shows up there automatically. If not, a normal folder works fine — Obsidian is optional.
Do not block setup on Obsidian, and never install it automatically. If the user asks for install guidance, offer the host-appropriate one-liner for THEM to run — macOS brew install --cask obsidian, Windows winget install Obsidian.Obsidian, Linux flatpak install flathub md.obsidian.Obsidian (or the AppImage from obsidian.md) — then continue setup with the filesystem fallback unless the user explicitly pauses to install Obsidian.
qmd is a separate, local, open-source Claude plugin (works in Claude Code and Cowork) that gives Counsel OS fast on-device search and — most usefully — entity discovery across your whole Obsidian vault by frontmatter, so it finds a counterparty or precedent anywhere in the vault, not just under the legal root. It runs entirely on your machine and needs no API key. It is not an Obsidian-style app cask — qmd is a Claude plugin you add and then point at your vault. It is optional: without it, Counsel OS uses filesystem search, and qmd can be added anytime.
Proactively detect whether qmd is usable and surface this offer without waiting for the user to ask:
query MCP tool is available this session (e.g. an mcp__qmd__query-style tool) → qmd is usable. Check whether a collection already covers the vault (qmd collection list). If one does, just say "qmd is wired" and continue — make no offer and create no duplicate collection. If none does, go to Phase 2.qmd CLI is on PATH (command -v qmd) but no query tool is connected → installed but not wired to this client. Either point the user at the plugin install + restart (Phase 1), or — if they installed the CLI deliberately — have them register an MCP server {"command":"qmd","args":["mcp"]} and restart; then index (Phase 2).Phase 1 — install (qmd absent). A /plugin install plus a session restart is inherently user-driven, so give the user the steps to run themselves; never auto-run them:
qmd would speed up search and let me find counterparties or precedents anywhere in your vault by frontmatter. It's a local, no-API-key Claude plugin — a few steps plus a restart, and skipping is totally fine (I'll use filesystem search). To add it:
/plugin marketplace add tobi/qmd /plugin install qmd@qmdThen restart Claude so the qmd tools load and re-run
/counsel-os:setup— I'll point qmd at your vault.
Then continue setup to completion on the filesystem fallback — qmd is never required to finish.
Phase 2 — index the vault (qmd usable, no collection yet). Only with an explicit yes for this step, run these — they are local, safe, and reversible:
qmd collection add <vault_root> --name counsel-os
qmd update
<vault_root> = the Obsidian vault root that contains the legal root, so frontmatter entity discovery spans the whole vault. Resolve it by walking up from the configured legal_root to the nearest ancestor containing a .obsidian/ folder; if there is no Obsidian vault, use the legal root's parent.qmd update builds the BM25 index only — key-free, no model download.qmd collection list (or a trial query) and tell the user qmd is now wired.qmd embed for semantic search — note it's a one-time ~940MB local model download. Never run qmd embed during setup.Consent & safety: never auto-install the plugin; never run collection add / update / embed without an explicit yes for that step; every prompt has an obvious skip, and declining returns to normal setup on the filesystem fallback. Setup never blocks on qmd.
If shell or file listing is available, after the user provides a path, detect whether it looks like an Obsidian vault:
[ -d "{user's path}/.obsidian" ] || [ -d "$(dirname '{user's path}')/.obsidian" ] && echo "IS_OBSIDIAN: yes" || echo "IS_OBSIDIAN: no"
If that detection is unavailable, skip it; the legal root does not have to be an Obsidian vault.
Then write the user's config file at {legal_root}/config.md:
# Counsel OS Configuration
counsel-os-config: true
config_version: 1
legal_root: {user's path}
# Optional overrides (defaults shown — uncomment to customize):
# entities_path: entities
# matters_path: matters
# auto_apply_law_updates: false # true = update applies law content without per-area approval
# law_management: plugin # 'user' = you own ALL law content; update stops syncing it (/counsel-os:law-refresh maintains it)
# entity_properties:
# type_field: counsel-os-type
# values: [counterparty, vendor, customer, prospect, matter]
This file is the authoritative source of per-user configuration. It travels with the user's vault (sync, git, machine swap), and both runtimes find it via the bootstrap procedure on subsequent sessions.
Do not write to plugin documentation files or to a config.local.md in the plugin tree. The plugin tree is read-only in some runtimes (Cowork) and shouldn't carry user state regardless.
Also write the pointer file if home-directory writes are available so subsequent sessions can skip the scan:
mkdir -p ~/.counsel-os
printf '%s' "{user's path}" > ~/.counsel-os/legal-root
The pointer is a per-machine performance cache; the vault's config.md is canonical. If home-directory writes are unavailable, skip this step.
Entity discovery is runtime-detected — if a content-index MCP tool is connected (QMD recommended; see CONNECTORS.md), it's used automatically and entity files can live anywhere in the vault. Otherwise the counsel skill falls back to grepping {legal_root}/{entities_path}/. No setup-time choice required.
Also create {legal_root}/entities/ as part of Step 2 — it serves as the filesystem fallback location and is harmless to create regardless of whether the user later connects QMD.
Create the directory structure and seed all content from the plugin into {legal_root}:
knowledge/law/)Copy all 26 law area directories with their files. Frontmatter is already present in the plugin seed files (including counsel-os-type and content-version). If frontmatter is missing for any reason, add:
---
counsel-os-type: law-area
content-version: "{date from plugin's .content-versions.json for that group}"
---
knowledge/practice-seed/)Copy the full practice seed into {legal_root}/practice/:
knowledge/practice-seed/profile.md → practice/profile.mdknowledge/practice-seed/standards/ → practice/standards/ (24 position files, pre-filled with market standards)knowledge/practice-seed/methods/ → practice/methods/ (method files with integrated checklists)knowledge/practice-seed/library/ → practice/library/ (clause language categories)knowledge/practice-seed/reference/ → practice/reference/ (starts with just _index.md — the user's curated source-material area: example agreements, checklists, treatise excerpts; sits outside the precedence layers)All files should already have counsel-os-type frontmatter from the seed (practice content uses practice; reference/_index.md uses reference).
Create {legal_root}/matters/ (empty — populated when substantive work begins).
Create {legal_root}/entities/ (empty — populated when /counsel closes a matter and proposes an entity file). Used as the filesystem fallback when no content-index tool is connected.
templates/memory/)Copy patterns.md. Add frontmatter:
---
counsel-os-type: memory-patterns
---
If shell access and plugin-tree write access are available, and the plugin has browse/src/ but no browse/dist/browse, try to build it:
bun is available: command -v buncd "${CLAUDE_PLUGIN_ROOT}" && bun install && bun run buildcd "${CLAUDE_PLUGIN_ROOT}" && bunx playwright install chromium. If network access is unavailable, tell the user the browse skill will prompt them to run that command before first use.browse/bin/find-browse downloads three assets from the plugin's GitHub release on first browse use — the prebuilt binary, the Playwright runtime packages, and the matching Chromium builds (~320MB total, one time). Just mention that the first browse command will take a couple of minutes. COUNSEL_OS_NO_DOWNLOAD=1 disables that fallback, in which case browse requires Bun.If shell access or plugin-tree write access is unavailable, skip this step. The rest of Counsel OS still works.
If shell access is available, check if pandoc is installed (command -v pandoc). If not, note:
pandoc is not installed. You'll need it to extract tracked changes from Word documents. Install with
brew install pandoc(macOS) orapt-get install pandoc(Linux).
If shell access is unavailable, skip this check and tell the user .docx tracked-change extraction depends on pandoc in CLI-style environments.
Report what was seeded and built:
Counsel OS framework seeded at
{legal_root}:
- law/ — 26 legal area files
- practice/ — profile template, 24 standards, methods, clause library, reference/ (for curated source material)
- matters/ — ready for intake
- memory/ — patterns log ready
{legal_root}/practice/profile.mdWalk through the profile conversationally. Don't dump all questions at once — ask 2-3 at a time. All answers go into sections of practice/profile.md.
Let's start with the basics about your organization.
- What's your organization's full legal name?
- What does your organization do? (Brief description — industry, products/services, stage)
- Are you in-house counsel, outside counsel, or something else?
Follow up:
4. Who's on the legal team? (Names, titles, and areas of responsibility) 5. What legal entities does your organization operate through? 6. What regulatory frameworks apply? (SOC 2, HIPAA, GDPR, PCI, etc.)
Now let's calibrate your legal philosophy.
How would you describe your overall approach? For example:
- "We're business enablers — find the path to yes while managing risk"
- "We're protective — better to over-flag than miss something"
- "We're pragmatic — focus energy on material issues, accept market terms on the rest"
On a spectrum from conservative to aggressive, where do you fall? When you can't negotiate everything, what do you fight for first?
Let's set your writing style preferences.
- Tone: How should legal work product sound? (e.g., "professional but approachable")
- Structure: Bullets or paragraphs? Executive summary first?
- Formality by audience: Different levels for internal vs. counterparty vs. board?
- Any language pet peeves?
Optional: "If you have a memo or redline that represents your ideal style, share it and I'll calibrate from it."
Last section: escalation thresholds.
- GREEN track (auto-approval): What can proceed with minimal review?
- YELLOW track (single review): What needs one reviewer?
- RED track (full review): What needs senior/committee review?
- Dollar thresholds: Under $X = auto-approve, etc.
- Always-escalate clauses: Specific types that always trigger escalation?
After the user sets thresholds, cross-reference against {legal_root}/law/ areas. Flag any conflicts where user thresholds would allow positions that violate law constraints.
Write the completed profile.md with all four sections and confirm:
Here's your practice profile. Anything you'd like to change?
{legal_root}/practice/standards/Walk through the key position files and let the user customize the ## Our Position section.
Your positions have been seeded with market standards. Let's walk through the key ones and adjust for your practice.
For each clause type, the file has a starting position. I need to know:
- Your standard: What you typically propose (may match the seed or differ)
- What you'll accept: Your flexibility range
- What you won't accept: Your hard limits
- Auto-escalate triggers: What always gets flagged regardless
For each major clause type in {legal_root}/practice/standards/:
## Our Position section## Our Position section in the file> **Limitation of Liability**
> Your starting position is: mutual cap at 12 months of fees, standard consequential
> damages exclusion, carve-outs for IP, data breach, confidentiality, and willful
> misconduct.
>
> Does this match your standard, or do you have different thresholds?
Prioritize the most impactful positions first (limitation of liability, indemnification, data protection, IP ownership, termination). The user can always refine others later.
After completing the walkthrough:
Your positions are set. You can refine any of them later by editing the files in practice/standards/ directly.
Offer to analyze past work product to auto-infer positions:
Would you like me to analyze 3-5 of your past contracts to help refine your positions? I can look at:
- Contracts you've signed (to see what you've actually accepted)
- Redlines you've sent (to see what you typically push for)
- Templates you use (to see your standard starting position)
This is optional but can help calibrate positions based on actual practice rather than aspirational standards.
If the user provides past contracts:
Offer to set up git for the user's legal knowledge:
Your legal knowledge — positions, counterparty history, decision patterns — is valuable and worth tracking. Want me to set up version control for your legal root?
This creates a private git repo in
{legal_root}so you can see how your practice evolves over time. When you close a matter, the files that closeout touched — the matter file plus any entity or knowledge updates — are committed automatically, scoped to just those paths; unrelated in-progress work in your vault is left alone.
cd {legal_root}
git init
Create {legal_root}/.gitignore:
.DS_Store
*.tmp
*~
Initial commit:
git add -A
git commit -m "Initial Counsel OS knowledge base"
Then ask:
Want to connect this to a private GitHub repo for backup? This is optional — local git works fine on its own.
Important: Your legal knowledge may contain privileged information. If you connect to GitHub, use a private repository.
# If they have an existing repo:
git remote add origin {their-repo-url}
git push -u origin main
# If they want to create one:
gh repo create {repo-name} --private
git remote add origin {repo-url}
git push -u origin main
Skip — no version control. The backup/restore scripts still work as a safety net.
Run a quick validation:
{legal_root}/config.md exists and contains counsel-os-config: true plus the correct legal_root: path## Setup Complete
Your Counsel OS is configured:
- [x] Legal root: {legal_root}
- [x] profile.md — [organization name], [risk appetite], [tone], [thresholds]
- [x] standards/ — [N] positions customized, [M] using market defaults
- [x] methods/ — [N] reference guides seeded
- [x] library/ — clause library seeded
- [x] reference/ — ready for curated source material
- [x] law/ — [N] law areas seeded
- [x] matters/ — ready
- [x] memory/ — patterns log ready
You're ready to go. Just say what you need:
- "Review this contract"
- "Is this clause ok?"
- "What's our position on indemnification?"
- "Draft a response to their redline"
To update your profile later, edit the files in {legal_root}/practice/ or run `/counsel-os:setup` again.
To pull plugin updates, run `/counsel-os:update`.