Skip to content

TAGII Upload Mesh / Documentation & delivery

Every file explains itself.

From your editor to your server, keep the purpose, destination and history of your work together.

The whole journey

Know the work.
Know where it belongs.

TAGII Upload Mesh brings together a code documentation standard and tools for checking, preparing and delivering files to their declared destinations. Backup, local storage and documentation on the server belong to that same journey.

The aim is simple: spend less time reconstructing what happened, and more time building on it.

Inside Upload MeshOriginal source and documentation
tagii-upload-mesh.shSource excerpt
#!/usr/bin/env bash
################################################################################
# TAGII UPLOAD MESH
################################################################################
# FILE TYPE: Deployment Tool (Bash Script)
# INTELLIJ PATH: /tagii/workstation-scripts/tagii-upload-mesh.sh
# VERSION: 1.3.55
#
# WHAT: Universal file deployment tool - uploads any project file to servers
#       based on deployment info in file headers
#
# WHY: Single command deploys files anywhere - reads WHERE from each file
#
# HOW: Bash 4+, rsync, SSH with ControlMaster
#
# WHERE (DEPLOYMENT):
#   - ALL SERVERS: /srv/tagii/tools/tagii-upload-mesh.sh
#
# SECRETS: Uses SSH_KEY from .env (default: ~/.ssh/id_rsa)
#
# CONNECTIONS:
#   FILE DEPENDENCIES:
#   - Requires: .env file in project root
#   - Reads headers from any file being uploaded
#
#   SERVER CONNECTIONS:
#   - Connects via SSH to all servers in .env
#   - Uses WireGuard IPs (10.0.10.x) when available
#
# AUTHOR: Matthew Sharon
# LAST UPDATED: 2026-02-14
################################################################################

Exact opening of the recovered original script. Historical paths and version are preserved.

Pick up the work without starting over.

Open a file and see what it does, why it exists and how it works. The explanation travels with the code, so a teammate or coding assistant has a place to begin.

These are excerpts from the original files, not a proposed product interface. The controls change which source you are reading.

Inside the code

More than a header.

The TAGII Code Documentation Standard explains the journey through the file as well as the file itself.

Explore the documentation standard
01

Purpose and home

What, why and how. Source, deployment destination, runtime, version, author and required secret names. Secret values stay outside the documentation.

02

Connections and flow

What calls this code, where it sends data, what it sends and what should come back.

03

Decisions and history

Why an approach was chosen, alternatives considered, changes and the session behind them.

04

Failure and recovery

What an error means, what caused it, and how to handle it. Warnings belong beside the relevant code.

Read the full file-header format

The canonical TAGII Code Documentation Standard. Placeholder fields are retained exactly as documented.

# ==============================================================================
# FILE TYPE: [Go Package/Kyverno Policy/Flutter Service/Shell Script/etc]
# INTELLIJ PATH: /tagii/path/from/repo/root/filename.ext
# CREATED: 2026-03-16
# DAILY SESSION: docs/Daily_Sessions/2026/03/2026-03-16.md
# CONNECTS TO: (none detected)
# VERSION: X.Y.Z
# ==============================================================================
#
# WHAT: [One-line description of what this file does]
#
# WHY: [Why this file exists, what problem it solves]
#
# HOW: [How it works, key algorithms or patterns used]
#
# WHERE (DEPLOYMENT): [server-name]
#   - Source: [local path]
#   - Deploy: [server path]
#   - Runtime: [service name and port]
#
# CONNECTIONS:
#   - [Service 1] (host:port) - [what it connects for]
#   - [Service 2] (host:port) - [what it connects for]
#
# SECRETS: [List secrets used or "None"]
#
# AUTHOR: Matthew MacSharon
# LAST UPDATED: YYYY-MM-DD
#
# CHANGELOG:
#   X.Y.Z (YYYY-MM-DD) - [What changed]
#   X.Y.Y (YYYY-MM-DD) - [Previous change]
#
# ==============================================================================

A check you can act on

Catch the mismatch
before it travels.

A copied or moved file can still claim its old location. The current path checker compares the declared path with the actual one and reports the difference.

Recorded output from the repository checker, run on its own real source file and a moved copy. The moved copy retained its old header and was refused. This checks paths, not whether an explanation is true.

Recorded terminal output · same file, moved in an isolated copy
$ python3 /home/tagii/TAGIIv4/tool/meshupload-check.py archive/meshupload-check.py

declared correctly : 0
HEADER IS WRONG    : 1
no header          : 0

files whose header points somewhere they are not:
  actual   /TAGIIv4/archive/meshupload-check.py
  declared /TAGIIv4/tool/meshupload-check.py

Exit status 1. Neither check rewrote or uploaded the file.

What you can build on

One product.
Clear progress.

The original Bash upload tool, the documentation standard and later Python and Go tools all exist. They cover different parts of the same workflow; current release readiness must be checked separately.

Reference tools

Document and prepare.

Check declared paths, stamp missing headers, update moved paths and add available creation history and import connections. People and agents still need to write and maintain the explanations.

Original tool and later implementations

Send work where it belongs.

The original Bash tool uses SSH and rsync, with header-based destinations, upload history and version comparisons. Later Go code adds header-driven delivery to paired-device shares. Source code alone does not establish a working release on every device.

Integrated experience in development

Preserve and recover.

The original has remote-backup and Nextcloud-backup paths. Those paths have different behavior and limits. A saved copy and a successful upload do not by themselves establish that a complete system can be restored.

For developers: the reference commands

These commands belong to the later Python documentation CLI, not the complete original upload tool. Work on a branch or saved copy before applying edits.

tagiiuploadmesh check
Read declared locations and report path mismatches.
tagiiuploadmesh stamp
Add missing headers for supported file types. Leave unknown meaning as TODO.
tagiiuploadmesh enrich
Add available Git creation history, existing session links and detected imports.
tagiiuploadmesh repath
Update declared paths after moving files.
tagiiuploadmesh fix
Apply stamping, path repair and enrichment, then check.
tagiiuploadmesh demo
Walk through documentation already present in a repository.

Import detection is currently limited to Go, Python and Dart, with up to eight connections per file. Selected generated folders and files above 2 MB are skipped. The current package does not bundle the server-delivery prototype or a complete backup system.

Make the next handoff easier.

Discuss using the standard in your project, teaching it to your team or contributing to the complete Upload Mesh experience.

Talk with Matthew