toishi 砥石whetstone

Use AI every day and stay the developer at the helm.

Toishi can help keep your skills sharp! It shows which skills you still use and suggests what to practise. Feeling rusty when you code by hand is normal when agents do most of the typing.

It counts who wrote each line.

Toishi records your work in Claude Code, Cursor and any editor that saves files in a git repository. Setup connects them for you.

The timeline groups your day into stretches of work. For each one you see what you typed, what the AI wrote and what you pasted.

Timeline

Your work, newest first. Scroll down to go back in time; pick a date above to jump.

Wednesday, October 21, 2026

2 stretches of work · 527 lines

02:47 PM

01:36 PM – 02:47 PM · acme-api · main

API endpoints and Testing & mocking

You wrote 14%; Claude Code wrote 86% over 1 prompt.

Built with Tokio and Axum in rust and sql.

Tests ran 1 time.

One commit, the last: “Add order status column”.

Claude CodeTokioAxum

Who wrote it

  • AI
  • Typed by you
  • Other

Languages and frameworks

RustSQL
  • Tokio
  • Axum

0

lines added

0

removed

0

files

0 min

long

What kind of work

Commits (1)

  • c000004Add order status column02:47 PM
    you wrote 14%

Files (3)

  • orders.rs
  • orders.rs
  • 0007_order_status.sql

Rhythm: lines added over time

10:17 AM

08:40 AM – 10:17 AM · acme-shop · main

Data fetching and Styling & layout

You wrote 36% of 234 lines, Cursor the bulk over 1 prompt.

Built with React, TanStack Query and TanStack Table in typescript and css.

One commit, the last: “Cache order totals”.

About 1.6 h from first to last change.

CursorReactTanStack QueryTanStack Table

Who wrote it

  • AI
  • Typed by you
  • Other

Languages and frameworks

TypeScriptCSS
  • React
  • TanStack Query
  • TanStack Table
  • Vitest

What kind of work

Commits (1)

  • c000004Cache order totals10:17 AM
    you wrote 36%

Files (4)

  • useOrdersQuery.ts
  • orders.css
  • OrdersTable.tsx
  • OrdersTable.test.tsx

0

lines added

0

removed

0

files

0.0 h

long

Rhythm: lines added over time

It shows which skills you are handing off.

More than 250 rules sort each change into languages, frameworks and kinds of work, such as React hooks or SQL joins.

The areas where AI writes most of the lines come first, with the last time you did them yourself. Areas you are happy to leave to AI can be marked, and drop out of the list.

Where you hand off the work
Tasks and frameworks where AI or pasting wrote most of the lines.
  • ReactFramework · 15% by you · last by hand 3 days ago
  • Data fetchingTask · 8% by you · last by hand 5 days ago
  • TanStack QueryFramework · 8% by you · last by hand 5 days ago
  • Database queriesTask · 7% by you · last by hand last month
  • SQLxFramework · 7% by you · last by hand last month
  • API endpointsTask · 13% by you · last by hand 9 days ago

Then you practise, by hand.

Each week it suggests a few areas to type yourself, each with a small exercise. An hour or two a week is plenty, and it is the fun part: coding is why most of us became developers.

With AI features switched on, it also builds a small unfinished project in your own stack, with tests. You fill in the gaps without AI, and the tests tell you when you are done.

Sharpen your skills

Small unfinished projects in the areas you hand off most. You finish them by hand; the tests tell you when you're done.

usePagination

A React hook for paging through a list, left unfinished on purpose. You write the missing parts by hand; the tests say when you are done.

Data fetchingTypeScript
4 of 9 tests pass
  1. Keep the current page: Store the page and expose it.
  2. Next and previous: Move between pages within bounds.
  3. Change the page size: Keep the first visible item in view. (0/2)
  4. Pages out of range: Clamp pages after the list shrinks. (0/3)
cd "~/toishi-practice/use-pagination" && ./check.shLast checked 3 days ago
  • Database queries

    Write the order lookups with joins yourself and check the plan, instead of asking for them.

    What you hand off in it

    • SQLx7% by you

    The project

    RustTokioSQLxAxum

    3–5 tasks that build on each other, with tests; about an hour. You write it by hand.

  • Async & concurrency

    Run the export steps concurrently with a timeout and cancellation, by hand.

    What you hand off in it

    • Tokio7% by you

    The project

    RustTokioSQLxAxum

    3–5 tasks that build on each other, with tests; about an hour. You write it by hand.

Your stats are yours.

Toishi keeps counts and labels, never your code or what you type. Everything is encrypted on your machine with a key that only your password opens.

How privacy works

Find out which skills you are handing off.

Create my account