Skip to content

About

Hash-chained accountability workbook. Local CLI + sheet. Not a court filing. Author Aziel Eliab.

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

EmployeeLock

A local workbook of what happened, what followed, and who owns each row.

Author: Aziel Eliab

Start

  1. python -m venv .venv && source .venv/bin/activate && pip install -e .
  2. employeelock ui
  3. Open http://127.0.0.1:8871/ and add a row.

Check the install with employeelock doctor. Add --json when a program should read the result.

Notes

Version: 0.1.0 · License: Apache-2.0 · Date: 2 September 2026 Spec: employeelock-v0 Paper: EL-WP-0.1 — docs/whitepaper.md · DOI 10.5281/zenodo.22257493

Name the event. Name who owns the record. Keep leftover blame blank if it is blank. Chain the row.

Forks are welcome and always allowed.

THIS IS: workbook (COVER, LOG, EVIDENCE, CHAIN, OWNERS, DASH, LISTS) + CLI (init/append/import/verify) + linear hash chain + countermeasure against unowned/renamed rows.

THIS IS NOT: UL or a BAL issue paper; FoldLock; TemporalLock (borrows ethic, different product); court filing / exhibit stickerer / counsel; truth score / consensus / token; remote uploader / anonymous relay; a charge sheet against a named living person.

Demo rows are generic format proof (records desk / unnamed prior process), not case facts. Do not put a legal name or home location in the template.

One-click install

curl -fsSL https://employeelock-download-tracker.vibelock.workers.dev/install.sh | bash

The script curls the counted tarball from this project's Worker (/download, User-Agent Mozilla/5.0), extracts, makes a venv, and pip install -e .. Then run employeelock ui.

Quick start

Same three steps as Start. For tests, install the dev extra: pip install -e ".[dev]".

The page at http://127.0.0.1:8871/ stays on this computer. No CDN, no telemetry.

Counted download (Cloudflare Worker)

This is the counted download. GitHub releases exist as a mirror. The Worker serves the gzip itself (HTTP 200, no 302 to GitHub).

Direct tarball (also counted): employeelock-0.1.0.tar.gz

Isolated counter: Worker employeelock-download-tracker, KV EMPLOYEELOCK_DOWNLOADS. Not mixed with any other product. /v1 does not increment downloads.

CLI

python3 employeelock.py init WORKBOOK.xlsx
python3 employeelock.py append WORKBOOK.xlsx \
  --event TEXT --result TEXT --blame TEXT --owner TEXT \
  --short TEXT --long TEXT [--renamed-from TEXT] [--cites HASH] \
  [--confidence 0.7] [--observer operator] [--exhibit Y|N|maybe]
python3 employeelock.py import WORKBOOK.xlsx FILE [FILE ...] \
  --event TEXT --result TEXT --blame TEXT --owner TEXT \
  --short TEXT --long TEXT [--kind KIND] [--note TEXT]
python3 employeelock.py verify WORKBOOK.xlsx
employeelock ui
employeelock doctor

People get short sentences. Programs pass --json.

verify --json prints {ok, rows, errors, missing_files, unowned}. Exit 0 if the chain hashes. Missing files are reported and do not by themselves fail ok.

v0 has no --copy-to. The workbook does not embed media.

How it works

Each LOG row is SHA-256 of canonical UTF-8 JSON (sorted keys, compact separators). confidence is forced to six decimal places. Genesis prev_hash is 64 ASCII zeros. Hashed fields only:

entry_id, timestamp, event, result, blame_placed, owner_named, renamed_from, outcome_short, outcome_long, evidence_ids, confidence, observer, file_sha256s, prev_hash

Blank owner_named → formula flag UNOWNED. Filled renamed_from → RENAMED. Path B: the CLI appends; it never rewrites hashed cells. A later long outcome is a new row that cites the old row_hash.

Unowned Lattice (UL / BAL) is the issue cluster this tool is built to fight. This product is not filed under UL-CAT and does not replace BAL papers.

Local UI

employeelock ui prints Open http://127.0.0.1:8871/ and serves the page on this computer.

The first screen asks for the row and offers Add row. Verify and Doctor sit beside it. New workbook, sample rows, file import, export, and JSON live under Advanced. About holds the longer scope note. Counts show events, UNOWNED, RENAMED, and chain OK. The page follows the system light or dark setting.

iPhone & Android

Flutter sources: mobile/. Application id com.azieeliab.employeelock. Offline. No analytics. Light and dark follow the system, with a gold focus. The phone app lives in this repo.

cd mobile
flutter create --org com.azieeliab --project-name employeelock .
flutter pub get
flutter run

Hosted /v1

The Worker hosts a stateless preview API. It never stores xlsx.

  • GET /v1/health
  • GET /v1/skill — skill markdown (not counted)
  • GET /v1/mesh — PROXY suite mesh status (default OFF; QNM live|locked|isolated; QNS-CD-1.0 photon QNS1 packet transfer cross-map)
  • POST /v1/append-preview — hash a proposed row without writing a file
  • POST /v1/verify-canonical — recompute hash of posted canonical
  • OpenAPI: /openapi.json
  • MCP: catalog https://aziel-runtime.vibelock.workers.dev/mcp and this Worker /mcp. Suite mesh /v1/mesh/* PROXY via AZIEL_RUNTIME (default OFF; QNM-BUILD-1.0 live|locked|isolated; QNS-CD-1.0 photon QNS1 packet transfer cross-map; no Node Gate; no public qnsd proxy). Catalog MCP mesh_* + FragGate slug=mesh. Hub cite / Worker mesh cross-map only — not a Softwares-tab product. Local qnsd is coded in qnm-node. Runtime cites + catalog field live in aziel-runtime. AZInterface has pair custody.

Banner: not a court, not UL, not a truth score.

For AI assistants

Works with ChatGPT (GPT Actions / OpenAI), Grok (xAI), Venice, Claude (Anthropic), Cursor (MCP), Glama (MCP), Perplexity, Microsoft Copilot / Bing, Google Gemini / Vertex, Mistral, Meta AI, Apple Intelligence surfaces, Amazon Q tooling, DuckAssist, You.com, Cohere, and other MCP/OpenAPI-capable assistants.

Import OpenAPI or MCP. This repo also ships SKILL.md so an assistant can log or verify a row.

Send User-Agent: Mozilla/5.0. Hosted never stores xlsx. Kid-plain fields: event, result, blame, owner, short, long.

Counted download (same Worker, gzip HTTP 200, no 302): employeelock-0.1.0.tar.gz

Papers

See docs/whitepaper.md (EL-WP-0.1).

Mesh (siblings, not this product)

Sibling Boundary
FoldLock Compress / decompress. EmployeeLock may index a .fld as a file. It does not fold.
TemporalLock Time receipts. EmployeeLock is a row chain about events and owners.
ForgeReceipts Packaging. A verified workbook can be a payload.
GodLock Public ABAD node. Not this sheet.
UL / BAL Issue papers stay issue papers. EmployeeLock cites the cluster and refuses to be filed as UL.

Tests

python -m pytest -q

Covers genesis hash, second-row link, blank owner → UNOWNED, renamed_from → RENAMED, verify catching an edited event, missing file reported, import hashing file bytes.

Use with AI assistants

Works with ChatGPT (GPT Actions / OpenAI), Grok (xAI), Venice, Claude (Anthropic), Cursor (MCP), Glama (MCP), Perplexity, Microsoft Copilot / Bing, Google Gemini / Vertex, Mistral, Meta AI, Apple Intelligence surfaces, Amazon Q tooling, DuckAssist, You.com, Cohere, and other MCP/OpenAPI-capable assistants.

Catalog OpenAPI: https://aziel-runtime.vibelock.workers.dev/openapi.json Catalog MCP: POST https://aziel-runtime.vibelock.workers.dev/mcp This Worker skill: https://employeelock-download-tracker.vibelock.workers.dev/v1/skill This Worker OpenAPI: https://employeelock-download-tracker.vibelock.workers.dev/openapi.json

  • ChatGPT (GPT Actions / OpenAI) — GPT Actions (no auth): import the catalog or Worker OpenAPI.
  • Grok (xAI) — custom tool / OpenAPI / MCP remote.
  • Venice — HTTP tools / OpenAPI.
  • Claude (Anthropic) — MCP or OpenAPI tools.
  • Cursor (MCP) and Glama (MCP) — catalog MCP.
  • Perplexity, Microsoft Copilot / Bing, Google Gemini / Vertex, Mistral, Meta AI, Apple Intelligence surfaces, Amazon Q tooling, DuckAssist, You.com, Cohere, and other MCP/OpenAPI-capable assistants — same OpenAPI or MCP endpoint.

Always send User-Agent: Mozilla/5.0.

Cite this

Aziel Eliab. EmployeeLock. https://github.com/AzielEliab/employeelock. https://employeelock-download-tracker.vibelock.workers.dev. https://doi.org/10.5281/zenodo.22257493.

About

Hash-chained accountability workbook. Local CLI + sheet. Not a court filing. Author Aziel Eliab.

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages