Tool Ctrl

User guide · x0.0.5
Independent tool Tool Ctrl has no connection to Festool, Milwaukee, DEWALT, Bosch, Makita, GitHub or any other maker, and none of them has given permission or endorsed it. Product names are here only to make it easier to record tools you own.

What it is

Tool Ctrl records every tool box you own, the drawers in each one and the tools inside. Every box gets a number that never changes, so a label you print today still matches in five years. Search finds any tool in a few seconds, with the shelf, box and drawer it's in.

It runs in your browser and saves on your device. There's no account. You can also keep the record in a private GitHub repo of your own, which syncs it between your computer, iPad and phone.

Getting started

Build the record on a computer or an iPad. A phone is for looking things up.

  1. Give your owner name. Tool Ctrl suggests a prefix from it, such as WW. Every box number starts with it.
  2. Choose how to begin: add a box, start from the tick-list, or import a list you already have.
  3. Open a box and add what's in it: tick tools off the list, type them, or read them from a photo.
  4. Export a backup when you're done, or connect GitHub so it keeps a copy for you.

Box numbers

A box ID is your prefix and a three-digit number: WW-014. Every kind of box, Systainer, Packout, chest or bag, shares one count, and the kind of box is a field, not part of the number.

  • A new box takes the next number after the highest one used.
  • A number is never used twice. Retire a box you no longer have and its ID stays in the record, marked Retired, because a label may still be out there.
  • Where a box sits, what it rides on and what's in it never change its number. Move or repack it and the label stays right.
  • You can add more prefixes, up to four capitals, for a second owner or a set kept apart. Record › Prefixes and kinds of box.

Drawers, trays and carts

Open a box and press Add drawers. Say how many and they are made in one step: a drawer unit with three drawers gets WW-014-D1 to D3. D is a drawer, T a tray and B a fixed bin. Drawers count from the top, starting at 1, and left to right where they sit side by side.

A drawer is the smallest thing with a number. A small case inside a drawer goes in the tool's notes.

Sits on links a box to the one it rides on, such as five Systainers on a cart. Its location then follows the cart.

Adding tools

Open a box or drawer and press Add tools. The tick-list has three kinds of tab.

  • My tools lists everything already in your record that isn't here, with where it is now. Tick one to move it here.
  • A maker's tab lists their tools, so you click what you own instead of typing it.
  • Hand tools is a plain list with no brand, for the screwdrivers, pliers and chisels that live in drawers. Add a brand on the tool if you like.

Choose where ticked tools go: into the box you have open, or Each into a new box. The second makes a box for every tick, with the next free number and the tool's name, which suits tools that live in their own case. Untick in the same visit and the new box goes away again.

Anything not on the list can be typed with Add a tool. Every field stays editable.

Consumables such as abrasives, blades and bits are hidden until you turn on Show consumables. They aren't counted as inventory, but a box of 125 mm abrasives can still list what it holds.

Read from photo

Open a box or drawer and press Read from photo. On an iPad it opens the camera; on a computer, choose a photo. Tool Ctrl reads the names it can see and suggests tools.

  • A match with the tool list comes ticked. A guess comes unticked.
  • A tool already in that box shows as Already here and isn't added twice.
  • Edit any name before you add it. The text it read is shown underneath.

Printed labels and model plates read best. Small or curved text, glare and low light read less reliably, so check every suggestion. The first photo loads the reader, about 14 MB. After that it works offline.

The photo is read on your device and let go when you add or cancel. It is never saved, synced or backed up.

Finding a tool

Search matches box IDs, names, kinds, locations, tool names, brands, notes and serial numbers. A result shows its full path, such as Shop wall › WW-067 › D3 › Trim router.

The Items view lists every tool, with filters and grouping. Select several to Move them, Set a field on all of them, or Retire them, and Undo if you change your mind. A moved tool keeps a line saying where it came from and when.

Warranty details

Any power or hand tool can carry its serial number, purchase date, seller, price, warranty length or end date, registration and a receipt link. All are optional.

  • The warranty end is worked out from the purchase date and length, unless you type an end date.
  • Warranty details belong to one tool. If a tool has a quantity above 1, Tool Ctrl offers to split one off.
  • A receipt is a link to wherever it already lives, such as a Drive file or an email. Tool Ctrl never fetches or stores it.
  • The Warranty view sorts tools by warranty end and shows which ones aren't registered. A tool's card has everything a claim needs, and Copy details puts it on the clipboard.

Importing a maker's warranty list

If you've registered your tools with the maker, you can bring them all in at once. In Record, press Import warranty list and choose the file. Tool Ctrl shows what it found before anything changes.

  • Each tool comes in as its own item, quantity 1, marked registered, with its serial number, purchase date, warranty end and warranty number. The part number goes in its notes.
  • Tools go to Loose. Open a box, then tick them in from My tools.
  • Names that match the built-in list take its name, kind and tier. Others keep the name from the file, so check those.
  • Importing the same list again adds only new tools, matched by serial number. It fills empty details on tools already here and never changes anything you typed.
  • Only those columns are read. Anything else in the file, such as your name or address, is ignored.

How to get your list from Festool. Sign in to your Festool account and open MyToolbox, which lists the tools you've registered. Export the list as a CSV file. It saves with a name like MyToolbox product overview.csv. Tool Ctrl reads the US export, with dates written month/day/year.

Importing a list

Record › Import a list reads a .csv with a name column. It also reads id, kind, location, contents (lines split by |), model and notes, and keeps any other columns with the box. A Box Ctrl spreadsheet export works. Save an Excel file as .csv first.

You see a summary before anything is added. IDs already used are listed and skipped, so importing twice doesn't double anything.

If the list uses another prefix, Tool Ctrl can renumber it to yours in the same order, keeping the number: ST-001 becomes WW-001. Where the old numbers have gaps, you can also number them in order, closing the gaps. That's off by default, because labels may already be printed. Each box keeps its old ID in its notes.

Labels with Box Ctrl

Tool Ctrl doesn't print. Record › Export for Box Ctrl saves a .csv in the columns Box Ctrl imports, one row per box, and one per drawer if you choose. Contents are built from tool names, two lines of up to 40 characters. If a box holds more than fits, the export names it and keeps the first tools that fit, without cutting a word. Warranty details never go in this file.

On a phone

A screen under 768 px wide is review only. Open boxes, search, read the Items and Warranty views and copy a warranty card. Adding, moving, photos, import and export are left off, so nothing changes by accident.

The record reaches a phone from GitHub, or from a backup file. A phone only reads from GitHub and never writes to it, so a token with read-only rights is enough there.

Keeping your record

Without GitHub, your record lives only in this browser on this device. Clearing browser data removes it. So keep a copy.

  • Export backup saves tool-ctrl-YYYY-MM-DD.json with everything. Open a backup replaces the record, after you confirm.
  • Export items saves a spreadsheet of every tool, with where it is and its warranty details.

Storing it on GitHub

This is optional. A GitHub repo of your own holds the record as a file, syncs it between devices and keeps a history of every change. You need a free GitHub account.

1. Make a private repo

  1. On GitHub, choose New repository. Name it something like tool-ctrl-data.
  2. Set it to Private. Your record can hold serial numbers and where your tools are kept, so keep it out of public view.
  3. Create it. It can be empty; Tool Ctrl adds its own files.

2. Make a token for that repo only

  1. In GitHub, open Settings › Developer settings › Personal access tokens › Fine-grained tokens, and choose Generate new token. The Make a token on GitHub button in Tool Ctrl goes straight there.
  2. Give it a name and an expiry date.
  3. Under Repository access, choose Only select repositories, and pick your data repo.
  4. Under Repository permissions, set Contents to Read and write. Leave everything else as it is. For a phone, make a second token with Contents set to Read-only.
  5. Generate it and copy it. GitHub shows it once.

3. Connect

  1. In Tool Ctrl, open Record › Connect to GitHub.
  2. Type the repo as owner/name, such as yourname/tool-ctrl-data, paste the token and press Connect.
  3. An empty repo gets tool-ctrl.json and a README. A repo that already holds a record asks whether to use the repo's record or this device's, and says how many boxes each has.

Connect each device on its own. The token stays on that device, and never goes in a link, an export, a backup or the repo. Disconnect deletes it.

How syncing works. Changes save on the device at once and go to GitHub a few seconds after your last edit, when the app opens, and on Sync now. Each sync is one commit you can see on GitHub. Offline, changes wait and go up when you're back. If two devices change the same field, Tool Ctrl shows both values and asks which to keep. If two add the same new box number, the second to sync takes the next free number and says so.

When a token expires, make a new one the same way and paste it in. Tool Ctrl carries on where it left off.

Errors and fixes

That file has no Name column: add a name column, or start from a Box Ctrl export.

WW-014 is already used: that box is in your record. It's skipped, and nothing doubles.

GitHub refused the token: it is wrong, expired or missing rights. Make a new one with Contents read and write for that repo. Your changes stay on the device until then.

This token can read the repo but not write to it: give it Contents read and write.

Storage is running low: export a backup, then connect GitHub so you have a second copy.

Privacy

Tool Ctrl has no server and no analytics. Your record stays on this device. The only network requests it makes after loading go to api.github.com, for your own data repo, and only after you connect. Photos are read on the device and never kept.