# Worked examples

These are **example implementations**: designed Kroy workflows showing exactly what an AI may and may not do. They are not customer results.

## AI-assisted bookkeeping review in Xero

Claude reviews the month’s bookkeeping and proposes a change set of corrections. The bookkeeper approves the ones they agree with and Kroy applies only those. Deletions and bank detail changes are refused.

- Industry: Accountancy · AI: Claude · Systems: Xero
- The AI may read: Bank transactions and reconciliation status (Xero); Bills, invoices and the chart of accounts (Xero); The client’s coding rules (Kroy Database)
- Kept out: Payroll; Bank credentials and bank details; Other clients
- The AI may do: Read transactions (xero.transactions.read); Propose a change set (artifact.create); Recode an approved transaction (xero.transactions.update)
- The AI may not do: Delete or void transactions (xero.transactions.delete); Change supplier bank details; Apply any change without approval
- A person must approve: The bookkeeper approves each correction before Kroy applies it

Page: https://getkroy.com/case-studies/bookkeeping-review

## Preparing a board pack with AI, and sharing it with the board

Claude assembles a draft board pack from Xero, Salesforce and the Kroy Database. The finance director approves it, and it appears in the board Channel. Directors can query the approved pack with their own AI, but not the ledger behind it.

- Industry: Professional services, Financial services · AI: Claude, ChatGPT · Systems: Xero, Salesforce, SharePoint
- The AI may read: Monthly management accounts (Xero); Pipeline summary (Salesforce); Headcount and operating measures (Kroy Database); Previous board minutes and actions (SharePoint)
- Kept out: Individual salaries; Transaction-level ledger detail, for directors; Draft packs, for directors
- The AI may do: Read reports (xero.reports.read, salesforce.report.read); Create the draft pack (artifact.create); Request approval (approval.request)
- The AI may not do: Share the pack before approval; Give directors ledger-level detail; Edit the approved pack
- A person must approve: The finance director approves the pack before it reaches the board Channel

Page: https://getkroy.com/case-studies/board-reporting

## A client document room with an expiry date

The buyer’s advisers can read, and ask their own AI about, the documents in the room until the expiry date. Anything outside the room, and any request after expiry, is refused.

- Industry: Legal · AI: Claude, ChatGPT · Systems: SharePoint
- The AI may read: Documents placed in the room (SharePoint, through the room’s projection); The room’s question log (Kroy Database)
- Kept out: The seller’s internal advice and correspondence; Documents not placed in the room; Other matters
- The AI may do: Read room documents (room.document.read); Ask questions (request.create); Respond to questions, for the firm (request.respond)
- The AI may not do: Read documents outside the room; Access after the expiry date; Upload to the seller’s folders
- A person must approve: A partner approves each document before it enters the room

Page: https://getkroy.com/case-studies/client-document-room

## Onboarding a new client with AI — while the AML review stays internal

Claude sets up the client record, drafts the engagement letter and document request, and prepares the AML checklist for a person. Only the practice’s nominated officer can complete the AML review, and the client never sees it.

- Industry: Accountancy · AI: Claude · Systems: Outlook, SharePoint, Xero
- The AI may read: Prospect details from the enquiry (Kroy Database); Engagement letter templates (SharePoint); Services agreed with the partner (Kroy Database)
- Kept out: Completed AML reviews for other clients; The nominated officer’s risk notes; Other clients' records
- The AI may do: Create the client entity (entity.create); Draft the engagement letter (artifact.create); Create an Outlook draft (outlook.draft.create); Create the client contact in Xero (xero.contacts.create); Prepare the AML checklist (aml.checklist.prepare)
- The AI may not do: Complete or approve the AML review (aml.review.complete); Send email (outlook.mail.send); Add AML material to the client Channel
- A person must approve: The nominated officer completes the AML review; The partner approves the engagement letter before it is sent

Page: https://getkroy.com/case-studies/client-onboarding

## Investigating a client’s question with ChatGPT, Xero and Outlook

ChatGPT gathers the relevant Xero data and correspondence for one client, explains the answer to the manager and drafts a reply in Outlook for the manager to send.

- Industry: Accountancy · AI: ChatGPT · Systems: Xero, Outlook
- The AI may read: The client’s VAT returns and transactions (Xero); Correspondence linked to the client (Outlook); The client’s open queries (Kroy Database)
- Kept out: Other clients' records and correspondence; Internal notes marked partner-only; Payroll data
- The AI may do: Read reports and transactions (xero.reports.read, xero.transactions.read); Read linked correspondence (outlook.mail.read); Create a reply draft (outlook.draft.create); Update the query record (query.update)
- The AI may not do: Send email (outlook.mail.send); Read mail not linked to the client; Read partner-only notes
- A person must approve: The manager sends the reply from the draft

Page: https://getkroy.com/case-studies/client-query-investigation

## A client uses their own Claude with the information you share

The client’s own Claude answers questions about outstanding records from the shared projection. A request for the firm’s internal notes is refused by Kroy.

- Industry: Accountancy · AI: Claude · Systems: Kroy only
- The AI may read: ABC Limited’s outstanding requests; ABC Limited’s approved reports; ABC Limited’s deadlines
- Kept out: Practice internal notes; AML review; Profitability; Any other client
- The AI may do: Read the client projection; Upload documents (documents.upload); Respond to requests (request.respond)
- The AI may not do: Read internal notes; Read other clients; Edit approved reports

Page: https://getkroy.com/case-studies/client-workspace-own-ai

## Shared project state across a consulting team’s AI tools

Claude, ChatGPT and Copilot read and update one project State in Kroy. Work handed from one consultant’s AI to another carries its context. Changing a client-agreed decision needs the engagement lead’s approval.

- Industry: Consulting · AI: Claude, ChatGPT, Microsoft Copilot · Systems: SharePoint, Microsoft Teams
- The AI may read: Project State (decisions, findings, open questions, deliverables); Working documents (SharePoint); Project channel messages (Microsoft Teams)
- Kept out: Restricted interview notes, for people not cleared for them; Other engagements; Commercial terms of the engagement
- The AI may do: Read project State (state.read); Add findings and open questions (state.update); Draft deliverables (artifact.create)
- The AI may not do: Change a client-agreed decision without approval; Read restricted interview notes without clearance; Read other engagements
- A person must approve: The engagement lead approves any change to a client-agreed decision

Page: https://getkroy.com/case-studies/consulting-project-state

## Letting AI update your website — with a person approving

Claude prepares a change set for the affected public pages. A person approves it, Kroy publishes the projection and the site rebuilds.

- Industry: Technology, Professional services · AI: Claude · Systems: Cloudflare, GitHub
- The AI may read: Public content entities (services, integrations, articles); Draft Artifacts
- Kept out: Internal and client content; Hosting and repository credentials
- The AI may do: Create draft change set; Request publication
- The AI may not do: Publish without approval; Edit content outside the public Channel
- A person must approve: A person approves each change set before publication

Page: https://getkroy.com/case-studies/ai-operated-website-publishing

## Claude Code and Codex working from shared state

Claude Code records a task’s progress and design decisions in Kroy State. Codex picks up the task from that state on another developer’s machine. Both open pull requests; neither can merge to the main branch or read production secrets.

- Industry: Technology · AI: Claude Code, Codex · Systems: GitHub, Jira
- The AI may read: Task state (goal, decisions, progress, open questions); The linked Jira issue; Repository branches and pull requests (GitHub)
- Kept out: Production secrets and deployment credentials; Repositories outside the team; GitHub tokens
- The AI may do: Read and update task state (state.read, state.update); Push to feature branches (github.branch.push); Open a pull request (github.pull_request.create); Comment on the Jira issue (jira.issue.comment)
- The AI may not do: Merge to main (github.pull_request.merge); Read production secrets; Push to protected branches
- A person must approve: A reviewer approves and merges every pull request

Page: https://getkroy.com/case-studies/claude-code-codex-shared-state

## Claude + Xero through Kroy

Claude answers questions using authorised Xero data and prepares drafts — without holding Xero credentials or reaching data the user cannot see.

- Industry: Accountancy · AI: Claude · Systems: Xero
- The AI may read: Contacts, invoices and bills for permitted organisations; Reports the user is permitted to view
- Kept out: Payroll; Organisations outside the user’s permissions; Xero credentials
- The AI may do: Read permitted Xero resources; Create draft invoices, where policy allows
- The AI may not do: Approve or send invoices without a person; Change bank details
- A person must approve: Approving an invoice

Page: https://getkroy.com/case-studies/claude-xero

## Reviewing a contract against the firm’s playbook with Claude

Claude compares the contract with the firm’s playbook and saves a clause-by-clause review note to the matter. It cannot reach other matters or send anything to the other side.

- Industry: Legal · AI: Claude · Systems: SharePoint, Outlook
- The AI may read: The contract in the matter’s document library (SharePoint); The firm’s commercial contracts playbook (SharePoint); Matter details and client instructions (Kroy Database)
- Kept out: Documents from other matters; Matters behind an information barrier; Billing and time records
- The AI may do: Read matter documents (sharepoint.file.read); Create a review note (artifact.create); Save a draft mark-up to the matter (sharepoint.file.create)
- The AI may not do: Read documents outside the matter; Email the counterparty (outlook.mail.send); Change the matter’s instructions
- A person must approve: The supervising partner approves the mark-up before it leaves the firm

Page: https://getkroy.com/case-studies/contract-review

## Handing over a legal matter between people and their AI

Claude prepares a handover note from the matter’s state. After a partner reassigns the matter, the new fee earner’s ChatGPT reads the same state and continues. Neither AI can reassign the matter.

- Industry: Legal · AI: Claude, ChatGPT · Systems: SharePoint, Outlook
- The AI may read: Matter state (key dates, open tasks, decisions, next steps); Matter documents (SharePoint); Matter correspondence (Outlook)
- Kept out: Other matters; The outgoing associate’s unrelated mail; Billing and time records
- The AI may do: Read matter state (state.read); Create a handover note (artifact.create); Update matter state (state.update)
- The AI may not do: Reassign the matter (matter.team.update) by an agent; Read the matter before being added to its team
- A person must approve: The supervising partner reassigns the matter

Page: https://getkroy.com/case-studies/matter-handoff

## Updating Salesforce after a client meeting with Claude

Claude logs the meeting, creates follow-up tasks and drafts the follow-up email. An opportunity stage change goes to the account manager’s manager for approval. Deletion, reassignment and bulk export are refused.

- Industry: Professional services, Technology · AI: Claude · Systems: Salesforce, Outlook
- The AI may read: The account, contacts and opportunities the user owns (Salesforce); Meeting notes the user provides; The user’s calendar entry for the meeting (Outlook)
- Kept out: Accounts owned by other teams; Contract values on other opportunities; Salesforce credentials
- The AI may do: Log an activity (salesforce.activity.create); Create a follow-up task (salesforce.task.create); Propose an opportunity update (salesforce.opportunity.update); Create an Outlook draft (outlook.draft.create)
- The AI may not do: Delete records (salesforce.record.delete); Change account owner; Export contact lists
- A person must approve: A sales manager approves opportunity stage changes

Page: https://getkroy.com/case-studies/crm-updates-salesforce

## Preparing a management accounts pack with Claude and Xero

Claude assembles the month’s figures and draft commentary as an Artifact. The manager approves it, and only then does it appear in the client’s workspace.

- Industry: Accountancy · AI: Claude · Systems: Xero, SharePoint
- The AI may read: Profit and loss, balance sheet and aged debtors for the month (Xero); Budget for the year (SharePoint); Prior month’s approved pack (Kroy Artifacts)
- Kept out: Individual payroll and salary detail; Internal manager notes about the client; Other clients
- The AI may do: Read reports (xero.reports.read); Read the budget file (sharepoint.file.read); Create a draft pack (artifact.create); Request approval (approval.request)
- The AI may not do: Share the pack with the client before approval; Edit an approved pack; Read individual salaries
- A person must approve: A manager approves each pack before it reaches the client’s Channel

Page: https://getkroy.com/case-studies/management-accounts-pack

## Partner approval for AI-prepared work

Claude prepares the work and requests approval. The partner reviews it, with their own AI summarising what is waiting, and approves in person. No agent can approve, and nobody can approve their own work.

- Industry: Accountancy · AI: Claude, Microsoft Copilot · Systems: Xero, SharePoint, Microsoft Teams
- The AI may read: Trial balance and reports (Xero); Working papers (SharePoint); Approval queue and review points (Kroy)
- Kept out: Clients outside each person’s portfolio; Payroll detail; Other partners' private notes
- The AI may do: Create the accounts Artifact (artifact.create); Request approval (approval.request); Post a notification to Teams (teams.message.post); Summarise the approval queue (approval.queue.read)
- The AI may not do: Approve work (approval.grant) by any agent; Approve work you prepared; Mark accounts final before approval
- A person must approve: A partner approves every set of accounts before it is marked final

Page: https://getkroy.com/case-studies/partner-approval-workflow

## Preparing a consulting proposal with Claude

Claude drafts the proposal from approved past work and team profiles. The pricing section is left for a partner, and the proposal is sent only after the partner approves it.

- Industry: Consulting · AI: Claude · Systems: SharePoint, Outlook, Salesforce
- The AI may read: The opportunity and the prospect’s brief (Salesforce); Past proposals cleared for reuse (SharePoint); Team profiles and availability (Kroy Database)
- Kept out: Day rates and margin; Confidential client deliverables not cleared for reuse; Staff appraisal records
- The AI may do: Read the opportunity (salesforce.opportunity.read); Read cleared proposals (sharepoint.file.read); Create the draft proposal (artifact.create); Create an Outlook draft (outlook.draft.create)
- The AI may not do: Read day rates; Send the proposal (outlook.mail.send); Reuse client material not cleared for reuse
- A person must approve: A partner sets pricing and approves the proposal

Page: https://getkroy.com/case-studies/proposal-preparation

## Employee self-service from SharePoint with AI

Copilot and ChatGPT answer staff questions from the policy sites each employee can read, and raise requests to HR or IT. Confidential HR material is never returned.

- Industry: Professional services · AI: Microsoft Copilot, ChatGPT · Systems: SharePoint, Microsoft Entra ID
- The AI may read: Staff handbook, HR policies and IT guides (SharePoint); The employee’s own role, office and team (Microsoft Entra ID)
- Kept out: HR case files; Salary bands and pay reviews; Sites the employee cannot access in SharePoint
- The AI may do: Search and read permitted policy content (sharepoint.search, sharepoint.file.read); Raise a request to HR or IT (request.create)
- The AI may not do: Read HR case files or salary data; Edit policy documents; Read content the employee cannot access

Page: https://getkroy.com/case-studies/sharepoint-knowledge

## A public, machine-readable company profile for AI

A prospect’s AI reads the firm’s services, locations and articles from a public Channel and requests a consultation. The request lands with the firm’s team. Anything beyond the public Channel is refused.

- Industry: Accountancy, Professional services · AI: ChatGPT, Claude · Systems: Kroy only
- The AI may read: Services, locations and published articles (public projection)
- Kept out: Client lists and client records; Fees and internal pricing; Staff contact details not marked public; Draft content
- The AI may do: Read services (services.read); Read locations (locations.read); Read articles (articles.read); Request a consultation (consultation.request)
- The AI may not do: Read clients or internal data; Accept a quote or engagement; Upload documents without a client relationship
- A person must approve: A person approves changes to the public Channel before publication

Page: https://getkroy.com/case-studies/public-ai-company-profile

## A private ERP Connector with a customer-facing order status Skill

A developer builds a private Kroy Connector for the ERP and a Check Order Status Skill. Staff AI and a customer’s own AI can both invoke it; each customer sees only their own orders.

- Industry: Technology · AI: Microsoft Copilot, Claude, ChatGPT · Systems: Private ERP connector
- The AI may read: Orders, order lines and shipment status (private ERP); Customer accounts (private ERP, mapped to the Kroy Database)
- Kept out: ERP credentials; Pricing and margin fields; Other customers' orders, for each customer
- The AI may do: Read order status (erp.order.read); Read shipments (erp.shipment.read); Subscribe to shipment updates (erp.order.shipped event)
- The AI may not do: Change orders or prices (erp.order.update); Read another customer’s orders; Read margin fields

Page: https://getkroy.com/case-studies/private-erp-connector

## A release workflow with deployment approval

Claude drafts release notes, creates a draft release and deploys to staging. Production deployment waits for the release manager’s approval, and Kroy refuses any attempt to skip it.

- Industry: Technology · AI: Claude · Systems: GitHub
- The AI may read: Merged pull requests since the last release (GitHub); Check results for the release commit (GitHub); The team’s release checklist (Kroy Database)
- Kept out: Deployment secrets; Repositories outside the release; GitHub tokens
- The AI may do: Read pull requests (github.pull_request.read); Create a draft release (github.release.create); Trigger a staging deployment (github.workflow.dispatch); Request production approval (approval.request)
- The AI may not do: Deploy to production without approval; Edit workflow files (github.workflow.update); Publish the release before production deployment
- A person must approve: The release manager approves each production deployment

Page: https://getkroy.com/case-studies/github-release-workflow

## Chasing year-end records with Claude, Xero and Outlook

Claude identifies March year-end clients with outstanding records and prepares Outlook drafts for review. Nothing is sent without a person.

- Industry: Accountancy · AI: Claude · Systems: Xero, SharePoint, Outlook
- The AI may read: Client list and year-end dates (Kroy Database); Records received per client (SharePoint); Accounts status per client (Xero)
- Kept out: Payroll data; Internal manager notes; AML reviews; Clients outside the user’s portfolio
- The AI may do: Read client status; Read missing-documents list; Create Outlook draft (outlook.draft.create); Update the board with chase status
- The AI may not do: Send email (outlook.mail.send); Read payroll; Read another team’s clients
- A person must approve: Any external email is sent by a person, from the draft

Page: https://getkroy.com/case-studies/year-end-records-chase

## Reviewing a VAT return with Claude and Xero before submission

Claude reviews the quarter’s VAT position in Xero and produces a review note of items to check. Recoding and filing stay with the manager.

- Industry: Accountancy · AI: Claude · Systems: Xero
- The AI may read: VAT return report for the period (Xero); Transactions and tax codes for the period (Xero); The previous quarter’s return, for comparison (Xero); The client’s VAT scheme and period dates (Kroy Database)
- Kept out: Payroll data; Clients outside the manager’s portfolio; Xero credentials; Internal fee and profitability notes
- The AI may do: Read VAT reports (xero.reports.read); Read transactions (xero.transactions.read); Create a review note (artifact.create)
- The AI may not do: Change tax codes or transactions (xero.transactions.update); File the VAT return; Read another portfolio’s clients
- A person must approve: The manager decides every correction and files the return in Xero

Page: https://getkroy.com/case-studies/vat-return-review
