tt skipanalínan
tt er Tímabók í skelinni þinni. Þú býrð til API-lykil einu sinni, keyrir tt setup, og eftir það mælir þú tímann beint úr terminalnum — sömu skipanir, sama /api/v1 og vefappið notar. Ekkert flakk milli glugga: tt start, tt stop, búið.
Áður en þú byrjar
tt talar við þjóninn með API-lykli sem er bundinn þínum aðgangi. Til að búa hann til þarftu að vera skráð(ur) inn í vefappið — sjá Innskráning. Allt sem þú gerir í gegnum tt er skráð á þig, nákvæmlega eins og þú hefðir slegið það inn í vefnum.
Þú þarft líka slóðina á þjóninn (t.d. https://timabok.is) og forritið tt sjálft á vélinni þinni.
Ábending: Vefreiturinn sem býr til lykilinn gefur þér fullbúna
tt setupskipun með réttri slóð og lykli — þú þarft ekki að setja hana saman sjálf(ur). Afritaðu og límdu.
Búa til API-lykil
Lyklarnir búa undir Stillingar. Þú kemst þangað með því að smella á nafnið þitt neðst í hliðarstikunni á tölvu, eða á Ég flipann neðst á síma.
- Opnaðu Stillingar og finndu spjaldið API lyklar. Undir fyrirsögninni stendur „Fyrir
ttskipanalínuna og MCP — lykillinn birtist aðeins einu sinni.“ - Sláðu inn heiti í reitinn með ábendingunni „Heiti lykils, t.d. fartölvan“. Nafnið er bara til að þekkja lykilinn aftur síðar (t.d. „fartölvan“ eða „vinnuvélin“). Skiljir þú reitinn eftir auðan fær lykillinn sjálfkrafa heitið
tt. - Smelltu á Búa til lykil.
Stillingar-síðan: hliðarstikan vinstra megin (nafnið þitt neðst opnar þessa síðu) og „API lyklar“ spjaldið með reitnum „Heiti lykils, t.d. fartölvan“ og hnappnum „Búa til lykil“.
Um leið og lykillinn er til birtist hann undir „Nýi lykillinn þinn — afritaðu hann núna:“. Þarna sérðu tvennt: sjálfan lykilinn (byrjar á sk_) og fullbúna setup-skipun tilbúna til afritunar.
Eftir „Búa til lykil“: reveal-reiturinn sýnir lykilinn sem byrjar á sk_ og línuna tt setup --url https://timabok.is --key sk_… sem þú afritar beint í terminalinn.
Athugið: Lykillinn sést aðeins þetta eina skipti. Þjónninn geymir hann aldrei í heilu lagi — bara afrit sem ekki er hægt að lesa til baka. Afritaðu hann strax. Týnir þú honum býrðu bara til nýjan.
Hver lykill rennur út ári eftir að hann er búinn til — gildistíminn birtist við lykilinn í listanum (DD.MM.ÁÁÁÁ). Þú getur haft allt að 25 virka lykla í einu; sértu í hámarkinu þarftu að afturkalla ónotaðan lykil áður en þú býrð til annan.
Til að fella lykil úr gildi smellirðu á Afturkalla við hann í listanum. Afturkallaður lykill hættir samstundis að virka; hvaða tt-uppsetning sem notar hann fær þá höfnun. Búðu til nýjan lykil ef vél glatast eða þú grunar að lykill hafi lekið.
Virkir lyklar birtast sem listi: heitið, forskeytið sk_…, stofndagur á sniðinu DD.MM.ÁÁÁÁ, og rauður „Afturkalla“ hnappur til að fella lykilinn úr gildi.
Tengja tt
Þegar þú ert með lykil keyrirðu setup einu sinni á vélinni:
tt setup --url https://timabok.is --key sk_lifandi_lykillinn_thinn
Báðar rökin eru skyldubundnar. Gleymirðu annarri færðu both --url and --key are required.
tt vistar slóðina og lykilinn í stillingaskrá og staðfestir tenginguna strax með því að spyrja þjóninn um stöðu. Takist það sérðu:
connected ✓ — https://timabok.is
Hafnar þjónninn lyklinum er skráin samt vistuð, en þú færð saved, but the server rejected the key: …. Þá er lykillinn líklega rangur eða afturkallaður — búðu til nýjan og keyrðu setup aftur.
Stillingarnar liggja í heimamöppu notandans, læstar þér einni (0600):
| Stýrikerfi | Staðsetning |
|---|---|
| macOS | ~/Library/Application Support/timabok/config.json |
| Linux | ~/.config/timabok/config.json |
| Windows | %AppData%\timabok\config.json |
Ábending: Þú getur keyrt
tt setupaftur hvenær sem er til að skipta um þjón eða skipta yfir í nýjan lykil — nýja skráin leysir þá gömlu af hólmi.
Skipanirnar
Yfirlit yfir allar skipanir — keyrðu tt help (eða tt -h) til að sjá þær í terminalnum:
| Skipun | Hvað hún gerir |
|---|---|
tt setup --url <þjónn> --key <lykill> |
Tengist þjóninum og vistar stillingar |
tt start <verkefni> [-t tegund] [-m athugasemd] |
Ræsir klukkuna (stöðvar fyrri sjálfkrafa) |
tt stop |
Stöðvar klukkuna |
tt status |
Sýnir hvað er í gangi |
tt log -p <verkefni> --from HH:MM --to HH:MM [--date ÁÁÁÁ-MM-DD] [-t tegund] [-m athugasemd] |
Skráir liðið tímabil eftir á |
tt projects |
Listar opin verkefni |
tt today |
Færslur dagsins og samtala |
Ef stillingar vantar (þú hefur ekki keyrt setup) svarar hvaða skipun sem er með no config — run: tt setup --url <server> --key <api key>.
tt status — hvað er í gangi
tt status
Er klukka í gangi sérðu hana með fylltum punkti:
● Kauply · Forritun (Kauply ehf.) 1:37 — endurskoðun
Línan les: verkefni · vinnutegund (viðskiptavinur) klukkustundir:mínútur — athugasemd. Tímalengdin er reiknuð lifandi. Sé ekkert í gangi færðu ○ not running.
tt projects — opnu verkefnin
tt projects
Listar öll opin verkefni sem hægt er að skrá á, með viðskiptavininum við hlið. Lokuð verkefni og verkefni fyrir geymda viðskiptavini sleppa. Séu engin opin verkefni færðu no open projects — create one under /admin — þá þarf umsjónarmaður að stofna verkefni fyrst.
Ábending: Keyrðu
tt projectsþegartt startfinnur ekki verkefnið þitt — þá sérðu nákvæmlega hvaða nöfn eru í boði.
tt start — ræstu klukkuna
tt start kauply -m "endurskoðun"
Fyrsta rökin er verkefnið. Þú þarft ekki að skrifa fullt nafn — tt finnur verkefnið eftir:
- nákvæmu heiti (ónæmt fyrir há-/lágstöfum), eða
- einkvæmum textabúti í heiti verkefnis eða viðskiptavinar.
Þannig ræsir tt start kau verkefnið „Kauply“ ef aðeins eitt opið verkefni passar. Passi fleiri en eitt færðu lista og velur nákvæmar:
tt: "kau" matches several projects: Kauply Bakvinnsla, Kauply Vefur
Passi ekkert: tt: no open project matches "xyz".
Valkvæðar rökur:
| Rök | Merking |
|---|---|
-m "texti" |
Athugasemd á færsluna |
-t "tegund" |
Vinnutegund (t.d. „Forritun“, „Fundur“) |
Vinnutegundin (-t) finnst á sama hátt og verkefni — nákvæmt heiti eða einkvæmur bútur. Sleppir þú -t velur Tímabók sjálfkrafa: síðustu tegund sem þú notaðir á þessu verkefni, annars fyrstu gjaldfærðu tegundina, annars þá fyrstu sem til er.
Þegar klukkan fer af stað sérðu:
▶ Kauply · Forritun (Kauply ehf.) 0:00 — endurskoðun
Athugið: Þú getur aðeins haft eina klukku í gangi í einu. Ræsir þú nýja klukku á meðan önnur er í gangi stöðvast sú fyrri sjálfkrafa — þú þarft ekki að
stop-a fyrst. Skiptu bara beint yfir með nýjutt start.
tt stop — stöðvaðu klukkuna
tt stop
Lokar færslunni sem er í gangi og sýnir hana fullkláraða:
■ Kauply · Forritun (Kauply ehf.) 1:52 — endurskoðun
Sé ekkert í gangi færðu nothing was running — skaðlaust.
tt today — dagurinn í dag
tt today
Sýnir allar færslur dagsins og samtöluna neðst. Færsla sem er í gangi er merkt með ●:
● Kauply · Forritun (Kauply ehf.) 0:48 — endurskoðun
Icelandair · Ráðgjöf (Icelandair ehf.) 2:15 — vinnustofa
total 3:03
Engar færslur í dag: no entries today.
tt log — skráðu tíma eftir á
Gleymdirðu að ræsa klukkuna? Skráðu tímabilið eftir á:
tt log -p kauply --from 09:00 --to 10:30 -m "fundur"
Skyldurök eru -p (verkefni), --from og --to (á sniðinu HH:MM, 24 tíma klukka). Vantar eitthvað þeirra færðu required: -p <project> --from HH:MM --to HH:MM.
| Rök | Merking | Sjálfgefið |
|---|---|---|
-p <verkefni> |
Verkefnið (sama leit og tt start) |
— |
--from HH:MM |
Upphafstími | — |
--to HH:MM |
Lokatími | — |
--date ÁÁÁÁ-MM-DD |
Dagsetning | Í dag |
-t <tegund> |
Vinnutegund | Sjálfvalin |
-m "texti" |
Athugasemd | Engin |
Sleppir þú --date er skráð á daginn í dag. Tímarnir eru túlkaðir í tímabelti þjónsins. Takist skráningin sérðu ✓ og færsluna:
✓ Kauply · Fundur (Kauply ehf.) 1:30 — fundur
Læstar færslur og uppgjör
Þegar uppgjör tímabils hefur verið samþykkt læsast færslurnar sem það nær yfir — þær eru orðnar hluti af reikningi og má ekki breyta. tt sýnir slíkar færslur með merkinu [locked]:
Kauply · Forritun (Kauply ehf.) 4:00 — sprota [locked]
Þú getur áfram skráð nýjan tíma, en læstum færslum verður ekki breytt í gegnum tt frekar en í vefnum. Taxtar, verðlagning og uppgjör gerast þjónsmegin — tt sér aðeins um að skrá tímann rétt.
Bilanaleit
| Skilaboð | Merking | Hvað gera |
|---|---|---|
no config — run: tt setup … |
Engar stillingar á vélinni | Keyrðu tt setup |
both --url and --key are required |
Vantar rök í setup |
Gefðu bæði --url og --key |
saved, but the server rejected the key: … |
Lykill rangur eða afturkallaður | Búðu til nýjan lykil, keyrðu setup aftur |
unknown or inactive user |
Aðgangur óvirkur eða lykill afturkallaður | Athugaðu aðganginn / búðu til nýjan lykil |
cannot reach <þjónn>: … |
Næ ekki í þjóninn | Athugaðu slóð og nettengingu |
which project? — tt start <project> |
Verkefni vantar | Bættu verkefninu við |
"…" matches several projects: … |
Fleiri en eitt verkefni passa | Notaðu nákvæmara heiti |
no open project matches "…" |
Ekkert opið verkefni passar | Keyrðu tt projects til að sjá nöfnin |
Undir húddinu — API-ið
tt er þunnt lag ofan á sama JSON-API og vefurinn (og MCP-þjónninn) nota — /api/v1, auðkennt með haus Authorization: Bearer sk_…. Þú getur talað beint við það úr eigin skriftum ef þú vilt:
| Aðferð og slóð | Til hvers |
|---|---|
GET /api/v1/status |
Hvort klukka er í gangi |
GET /api/v1/projects |
Opin verkefni |
GET /api/v1/worktypes |
Virkar vinnutegundir (auðkenni, heiti, gjaldfær) |
GET /api/v1/tasks?project=… |
Verkþættir eins verkefnis (heiti, auðkenni eða einkvæmur hluti heitis) |
POST /api/v1/timer/start |
Ræsa klukku |
POST /api/v1/timer/stop |
Stöðva klukku |
POST /api/v1/entries |
Skrá liðið tímabil |
GET /api/v1/entries?from=…&to=… |
Færslur á tímabili + samtala |
Öll svör eru JSON. Tímabil má gefa á sniðinu RFC3339, ÁÁÁÁ-MM-DD HH:MM eða ÁÁÁÁ-MM-DD. Villur koma alltaf í einu og sama sniði — {"error": {"code": "invalid_project", "message": "…"}} — með stöðugum code sem skriftur geta greint og message fyrir fólk.
Beiðnir eru hraðatakmarkaðar á hvern lykil (120 á mínútu, með 30 í startholunum). Farirðu yfir færðu 429 með Retry-After-haus sem segir hve margar sekúndur á að bíða — venjuleg tt-notkun kemst hvergi nærri því.
Sami lykill opnar líka MCP-þjóninn á /mcp, svo Claude getur skráð tíma jafnóðum — en það er önnur saga.
Ábending: Af því að
ttsendir sömu skipanir og vefurinn birtast færslur úr terminalnum samstundis í vefappinu — og öfugt. Þú getur ræst klukku meðtt startog stöðvað hana í símanum.