Agent Landing
You are an AI agent working in levander's Obsidian vault.
This note is your map. Read it first, then follow the links to what you need.
Vault Purpose
This is a personal knowledge base covering several active software projects and a full dev-environment reference. The owner (levander / Andras) is a developer who works with AI agents daily — everything here is written to be agent-friendly.
Vault Structure
levandor_obsidian/
├── Agent Landing.md ← you are here
├── projects/
│ ├── alpiq-bess/ ← Rust/Python BESS platform (Alpiq)
│ ├── facekom/ ← Enterprise KYC/eKYC platform (TechTeamer)
│ │ └── investigations/ ← ticket-level deep dives
│ ├── homelab/ ← Physical/on-prem infra: OpenWrt router, LAN, WiFi, tailnet
│ ├── levandor-crm/ ← Personal CRM (React + Supabase)
│ ├── levandor-infra/ ← GCP VM provisioning, Terraform + Ansible, deployed
│ └── txarchive/ ← txArchive 2025 rewrite (Supabase backend + Vite/React SPA)
│
│ Every projects/<project>/ folder also contains:
│ LOG.md ← reverse-chronological session log
│ TOPICS.md ← theme index of recurring work areas
│
└── .agents/ ← AgentOps artifacts (not vault content)
Projects — Where to Look
| Project | Entry Point | Agent Context | Key Tags |
|---|---|---|---|
| Alpiq BESS (Mando) | Alpiq BESS | BESS Agent Context | #alpiq, #bess |
| FaceKom | FaceKom | FaceKom Agent Context | #facekom |
| Levandor CRM | levandor-crm | CRM Agent Context | #levandor, #crm |
| Homelab (physical infra) | homelab | Physical/on-prem infra — distinct from levandor-infra, which is cloud-only. Site gateway telep-router (Asus RT-AX89X, OpenWrt 24.10.0) reachable at /usr/bin/ssh root@telep-router over Tailscale. Site is double-NATed with no public IP — use Tailscale, not port-forwards. | #project/homelab |
| Levandor Infra (GCP Terraform) | levandor-infra | Spec 1 deployed (ops-vm live); Spec 2a in design: see gcp-app-deploy-design. How-to: agent-guide-provision-new-vm, agent-guide-configure-app-deploy | #project/levandor-infra |
| txArchive 2025 | txArchive 2025 Rewrite | — (see overview note) | #project/txarchive |
| dionysus (news engine) | dionysus | Design phase — see dionysus-architecture-decisions. Platform-first news-aggregation microservice in the trading empire (GDELT-spine, Postgres+Qdrant, NATS JetStream, Tailscale-native) | #project/dionysus |
| babylon (agent coord MCP) | babylon | DEPLOYED + cutover Phase 1 IN PROGRESS (2026-06-09, pin 4fe5cdb). Fleet migration from AGENT_HANDOFF.md is staged in 4 phases — see babylon-migration; per-agent wiring is in babylon-operator-crib-sheet. Host layout / Ansible role / Litestream / CLI: babylon-deploy-notes. Build + audit: babylon + babylon + babylon-design-decisions. Token-saving Rust MCP server (rmcp 1.7 Streamable HTTP, Tailscale, SQLite). | #project/babylon |
| position_manager (pmv2) | position_manager | pmv2 fleet’s order-execution gate. Fail-closed: resolves autotrade mode from the message-body order.source (NOT the NATS subject) against pmv2_autotrade_sources; unknown source → Mode::Off, silently skipped. Pinned pmv2-contracts 4c7a54f (SCHEMA_VERSION=2). See the 3-way source invariant + source-rename gotcha. | #project/position_manager, #pmv2 |
| esbuild-fivem | esbuild-fivem | FiveM (FXServer) resource template — TypeScript bundled via esbuild, split server/client/common builds (two independent runtimes). On Node 22 as of node16-to-node22-migration. | #project/esbuild-fivem |
| WiFi Transmitter Hunter | wifi-hunter | RPi 5 + iPhone tool for physically hunting a WiFi transmitter. Single-radio: wlan0 hosts a hotspot AND scans the full band simultaneously (no USB dongle — see pi5-scan-while-ap-mode). Python 3 stdlib HTTPS server on port 8443; iPhone Safari reads GPS + compass and draws a plane-fit RSSI-gradient arrow. Pi at ssh raspi (eth0 192.168.1.200). | #project/wifi-hunter |
| Tatabánya Mesh (Meshtastic) | tatabanya-mesh | Personal hobby: friends-only isolated Meshtastic LoRa mesh over Tatabánya on EU_868 (license-free). Isolation = custom PRIMARY channel + random 256-bit PSK, MQTT off. Security caveat: AES-CTR gives confidentiality but no authenticity (PSK-holder can impersonate any node); run firmware ≥ 2.7.15 (CVE-2025-53627). Range comes from height-over-terrain — Turul/Kőhegy ridge (~320m) solar repeater is the biggest jump. See tatabanya-mesh. | #project/tatabanya-mesh |
| voice-agent (AI receptionist SaaS) | voice-agent | New 2026-07-21, repo ~/coding/voice_agent (greenfield). Multi-tenant AI receptionist as a Rust-native cascaded voice pipeline on Twilio Media Streams. Vendor landscape researched → three decisions: cascaded not speech-to-speech (voice-agent-speech-to-speech-disqualification-2026-07-21 — alphanumeric read-back corruption, name-triggered language drift, no verbatim guarantee), own Rust runtime not Pipecat/LiveKit (voice-agent-latency-budget-2026-07-21 — ~480ms of a measured 1,048ms loop is unaccounted orchestration overhead), Twilio despite being priciest (voice-agent-telephony-carriers-2026-07-21 — suspension risk ≫ a 0.0326/min. Gotcha: TTS concurrency caps, not price, are the binding constraint (ElevenLabs 15 concurrent even at $990/mo). | #project/voice-agent |
| slv1 (Solana meme-coin trading) | slv1 | New 2026-07-03, repo ~/coding/slv1. Strategy #1 (Jito-shreds copy trading) analyzed over 2 research rounds → conditional GO, sharpened: desk research exhausted, next step is a 2–4 wk measurement-rig MVP on managed feeds; build feed-agnostic (Jito ToS revocable), no colo before the Rotor SIMD lands (initial Alpenglow keeps Turbine, shred edge survives). Key fact: mirror trades land slot N+1 at earliest — edge is wallet selection, not latency. See slv1-copy-trading-feasibility-2026-07-03. Strategy #2 (market-intel sniper) queued. | #project/slv1 |
Always load the Agent Context note for a project before doing any work in it. These contain architecture, conventions, and critical knowledge you need.
Per-Project Index Files
Every project folder under projects/<project>/ has two auto-maintained index files. Read them BEFORE trawling individual notes — they are the fast path for “what’s been going on in this project.”
| File | Purpose | Maintained by |
|---|---|---|
LOG.md | Reverse-chronological session log — newest dates at top, each bullet links to a note | obsidian-documenter writes / historian reads at bootstrap (top ~15 entries) |
TOPICS.md | Theme index — ## <Topic> headings with wikilinks to related notes | obsidian-documenter writes / historian reads at bootstrap (full file) |
When you document new work in a project, the obsidian-documenter agent appends to LOG.md and updates the matching theme(s) in TOPICS.md automatically — you do not maintain these by hand.
Where to Write
| You want to… | Write it in… |
|---|---|
| Add project knowledge (architecture, conventions, decisions) | projects/<project>/ — link from the project’s main note |
| Investigate a specific ticket or bug | projects/<project>/investigations/ (create the folder if missing) |
| Add agent context for a project | projects/<project>/agent-context*.md — tag with #agent-context |
| Create a daily note | Vault root, named YYYY-MM-DD.md |
| Create a debugging log | projects/<project>/debugging-log*.md |
Diagrams — Mermaid Guidelines
This vault uses Mermaid diagrams rendered natively by Obsidian. Follow these rules when creating or editing diagrams, and progressively disclose detail so readers can drill in at their own pace.
Progressive Disclosure Pattern
Wrap diagrams in foldable callouts so they don’t dominate the page. Use collapsed (-) by default for supplementary diagrams, expanded (+) only for the primary diagram of a note.
> [!abstract]- System Architecture
>
> ```mermaid
> graph TD
> A --> B --> C
> ```When a topic has multiple levels of detail, nest them:
- Top-level callout — high-level overview diagram (collapsed)
- Subsection callouts inside — detailed breakdowns per component (collapsed)
> [!abstract]- Architecture Overview
>
> ```mermaid
> graph TD
> Frontend --> API --> DB
> ```
>
> > [!example]- Frontend detail
> > ```mermaid
> > graph LR
> > React --> Router --> Pages
> > ```
>
> > [!example]- API detail
> > ```mermaid
> > graph LR
> > Express --> Auth --> Routes
> > ```When to Use Diagrams
| Use a diagram when… | Diagram type |
|---|---|
| Showing system/service topology | graph TD or graph LR |
| Documenting a workflow or process | flowchart TD |
| Mapping state transitions | stateDiagram-v2 |
| Showing a timeline or sequence | sequenceDiagram |
| Categorizing concepts | mindmap |
| Comparing phases or milestones | gantt |
Diagram Style Rules
- Dark-theme friendly — use muted fill colors (
#2d2d2d,#264653,#3d2020) with light text (#fff). Avoid bright backgrounds. - Label nodes clearly — use
<br/>for line breaks inside node labels,<b>for emphasis,<i>for annotations. - Keep it scannable — max ~8-10 nodes per diagram. If it’s bigger, split into multiple progressive-disclosure layers.
- Link to notes — reference vault notes in labels using
[[Note Name]]syntax where it helps navigation. - No orphan diagrams — every diagram must live inside a callout with a descriptive title. Never put a bare mermaid block at the top level of a note.
- Callout type conventions:
[!abstract]— structural overviews (architecture, directory trees)[!example]— component-level detail diagrams[!info]— flowcharts and routing/decision diagrams[!note]— sequence diagrams and timelines
Minimal Example
> [!abstract]- Data Flow
>
> ```mermaid
> graph LR
> Input["User Input"] --> Validate["Validation"]
> Validate --> Store["Supabase"]
> Store --> Cache["TanStack Query"]
> Cache --> UI["React Component"]
> style Input fill:#264653,stroke:#2a9d8f,color:#fff
> style Store fill:#2d2d2d,stroke:#888,color:#fff
> ```Writing Conventions
- Frontmatter is required on every note — at minimum include
tags. - Wikilinks (
[[Note Name]]) for all internal references — never relative markdown links. - Tag with the project name (
#alpiq,#facekom,#levandor) so notes are filterable. - Agent context notes get the
#agent-contexttag and an alias ending in “Agent Context”. - MOC notes (maps of content) get the
#moctag. - Notes that serve as indexes or entry points should use callouts to orient the reader.
Tags Reference
| Tag | Meaning |
|---|---|
#agent-context | Dense reference designed for AI agent onboarding |
#moc | Map of Content — index note linking related notes |
#alpiq, #bess | Alpiq BESS / Mando project |
#facekom | FaceKom / vuer project |
#levandor, #crm | Levandor CRM project |
#project/levandor-infra | Levandor Infra (GCP Terraform + Ansible) project |
#quick-reference | Cheat-sheet style note |
What NOT to Do
- Do not write into
.obsidian/or.agents/— these are managed by Obsidian and AgentOps respectively. - Do not create README.md files — this vault uses Obsidian notes, not GitHub conventions.
- Do not use standard markdown links (
[text](path)) for internal vault links — use wikilinks. - Do not create notes without frontmatter tags.