Projects and Repositories

This document defines: 1. Project IDs - Short identifiers for projects, used for tool configuration (e.g., issuekit) and cross-project references 2. Repository IDs - Short identifiers for git repositories, used for repository traversal commands

Important: Project IDs are independent of repository location. Projects may move between repositories without changing their project ID. Use project names/IDs for all normal operations; repository IDs are only needed for git repository traversal.

ID Conventions

  • Name format: Lowercase, one word preferred, hyphen-separated if needed
  • ID format: Short uppercase/mixed-case identifiers (2-10 characters)
  • Uniqueness: Each ID must be unique across the entire workspace
  • Naming sources (in order of preference):

1. Main executable name (e.g., buildkit, testkit, issuekit) 2. Last words of project name with hyphen (e.g., core-kernel) - Stability: Once assigned, IDs should not change (tools may reference them)

Project ID Table

Core Framework (core/)

ProjectNameIDDescription
tom_core_kernel core-kernel CK Core framework kernel library
tom_core_flutter core-flutter CF Flutter integration library
tom_core_server core-server CS Server-side framework library

AI Build (ai_build/)

ProjectNameIDDescription
tom_aitom-aiAIAI utilities library
tom_ai_buildai-buildAIBAI-powered build tools
tom_codespec codespec CSP CodeSpec definitions and parser

DevOps (devops/)

ProjectNameIDDescription
tom_buildtom-buildTBWorkspace build tool
tom_build_clitomTOMTom CLI executable
tom_build_common build-common TC Shared build utilities
tom_deploydeployDPDeployment tool library
tom_deploy_toolsdeploykitDKDeployment CLI tools

User Auth Management (tom_uam/)

ProjectNameIDDescription
tom_uam_serveruam-serverUAMSUAM server application
tom_uam_clientuam-clientUAMCUAM Flutter client
tom_uam_codespec uam-codespec UAMCS UAM CodeSpec definitions

Subscription & Quota Management (tom_sqm/)

ProjectNameIDDescription
tom_sqm_serversqm-serverSQMSSQM server application
tom_sqm_admin_client sqm-admin SQMA SQM admin Flutter app
tom_sqm_customer_client sqm-customer SQMC SQM customer Flutter app
tom_sqm_codespec sqm-codespec SQMCS SQM CodeSpec definitions

Cloud Provisioning (cloud/)

ProjectNameIDDescription
tom_provisioningprovisioningPVProvisioning library
tom_provisioning_server prov-server PVS Provisioning server app

Scripts (_scripts/)

ProjectNameIDDescription
tom_scriptsscriptsSCRPTWorkspace utility scripts

---

Tom AI Sub-Repos (tom_ai/)

tom_basics (tom_ai/basics/)

ProjectNameIDDescription
tom_basicsbasicsBSCCore utilities library
tom_basics_network basics-network BSCN Network utilities
tom_basics_console basics-console BSCC Console/CLI utilities
tom_build_basebuildbaseBBBuild tool base library
tom_toolstoolsTLSGeneral tools library
tom_cryptocryptoCRPTCryptography library
tom_chattools chattools CT Chat/communication utilities

tom_devops (tom_ai/devops/)

ProjectNameIDDescription
tom_buildbuildBLDBuild tool
tom_build_clibuildcliBLDCBuild CLI
tom_build_common buildcommon BLDC Build common utilities
tom_build_kitbuildkitBKBuild infrastructure library
tom_deploydeployDPLDeployment tool
tom_deploy_toolsdeploytoolsDPLTDeployment utilities
tom_github_apigithubGHGitHub API client
tom_issue_kitissuekitIKIssue tracking tool
tom_md2latexmd2latexM2LMarkdown to LaTeX converter
tom_md2pdfmd2pdfM2PMarkdown to PDF converter
tom_test_kittestkitTKTesting utilities library

tom_d4rt (tom_ai/d4rt/)

ProjectNameIDDescription
tom_d4rtd4D4D4rt interpreter
tom_d4rt_generatord4rtgenD4GD4rt bridge generator
tom_d4rt_dclidcliDCLID4rt DCli integration
tom_ast_generatorastgenASTGAST code generator
tom_ast_modelastmodelASTMAST data models
tom_d4rt_astastASTD4rt AST definitions
tom_d4rt_execd4execD4ED4rt execution engine
tom_dcli_execdcliexecDCEDCli execution engine

tom_distributed (tom_ai/distributed/)

ProjectNameIDDescription
tom_dist_ledgerdl-libDLLDistributed ledger library
tom_dist_ledger_tooldistledgerDLLedger CLI tool
tom_distributed_orchestration do-lib DOL Distribution orchestration lib
tom_distributed_orchestration_tool orchestrator DO Orchestration CLI tool
tom_process_monitorpm-libPMLProcess monitor library
tom_process_monitor_tool processmonitor PMT Process monitor CLI
tom_distributed_typescript dist-ts DTS TypeScript distributed lib

tom_reflection (tom_ai/reflection/)

ProjectNameIDDescription
tom_reflection reflection RFL Runtime reflection library
tom_reflection_generator reflectgen RFLG Reflection code generator
tom_reflection_test reflect-test RFLT Reflection test project
tom_reflectorreflectorRFLRReflector tool
tom_reflector_model reflector-model RFLM Reflector data models

tom_vscode (tom_ai/vscode/)

ProjectNameIDDescription
tom_vscode_bridgebridgeVSBVS Code Dart bridge
tom_vscode_extensionextVSEVS Code extension
tom_vscode_scripting_api vs-api VS VS Code scripting API
tom_vscode_shared vs-shared VSS VS Code shared utilities
tom_vscode_workflow vs-workflow VSW VS Code workflow engine
yaml_graph_coreyg-coreYGCYAML graph core library
yaml_graph_vscode yg-vscode YGV YAML graph VS Code integration

tom_core (tom_ai/core/)

ProjectNameIDDescription
tom_core_kernelkernelCKCore kernel
tom_core_fluttercore-flutterCFCore Flutter
tom_core_servercore-serverCSCore server

tom_ai_build (tom_ai/ai_build/)

ProjectNameIDDescription
tom_aiaiAITom AI library
tom_ai_buildai-buildAIBAI build tools
tom_code_specscodespecsCSPECCode specifications
tom_doc_scannerdocscannerDSCNDocument scanner
tom_doc_specsdocspecsDSPCDocument specifications

tom_cloud (tom_ai/cloud/)

ProjectNameIDDescription
tom_provisioningprovisioningPROVCloud provisioning
tom_provisioning_server prov-server PROVS Provisioning server

External Dependencies (tom_ai/xternal/)

ProjectNameIDDescription
native_semaphores named-sema NSema Named semaphores library (forked)
tom_kdbx kdbx KDBX authpass/kdbx.dart 2.4.2 fork carrying the Webwork patch series tom/2.4.2-patches (pinned by tom_webwork_core )

---

Test Projects (zom_ prefix)

Test projects in zom_workspaces/ are excluded from project IDs. They are used for testing build tools and should not have production IDs.

---

Git Repository IDs

Repository IDs are separate from project IDs. They identify git repositories for traversal commands (e.g., --modules basics).

When to use repository IDs: - Git operations across multiple repositories - Repository traversal in build tools - Specifying which repositories to include/exclude

When NOT to use repository IDs: - Normal project references (use project name/ID instead) - Issue tracking (use project ID) - Configuration files (use project ID)

Repository NameRepo IDGitHub Repository
tom (main SDK)TOMal-the-bear/tom
ai_buildAIBal-the-bear/tom_ai_build
basicsBSCal-the-bear/tom_basics
cloudCLDal-the-bear/tom_cloud
coreCOREal-the-bear/tom_core
d4rtD4al-the-bear/tom_d4rt
devopsDEVal-the-bear/tom_devops
distributedDISTal-the-bear/tom_distributed
reflectionRFLal-the-bear/tom_reflection
vscodeVSCal-the-bear/tom_vscode
native_semaphoresNSemaopen-runtime/native_semaphores
tom_kdbxKDBXal-the-bear/tom_kdbx
tom_uamUAMal-the-bear/tom_uam
tom_sqmSQMal-the-bear/tom_sqm
tom_forgeFRGal-the-bear/tom_forge
tom_worktrackerWTRal-the-bear/tom_worktracker
tom_assistantASTal-the-bear/tom_assistant
app_webworkWEBWKal-the-bear/tom_app_webwork
app_tompassTPASSal-the-bear/tom_app_tompass
app_deepworkDPWKal-the-bear/tom_app_deepwork

Projects may move between repositories. If a project moves, only the repository mapping changes—the project ID stays the same.