- Split src/adapters/ssr.py (2160 LOC) into ssr/ package grouped by CMS: realworks.py, sure.py, schiedam.py, denhaag.py, overige.py - Add _og_detail() to api.py; all OG Online scrapers now fall back to detail page fetch when energielabel/bouwjaar are missing from the API - Fix run() to recalculate travel times for existing listings where fiets_mark IS NULL; upsert() now writes travel cols on existing rows too - Update tests/cache.py to patch fetch_soup in every ssr submodule - Update docs to reflect new package structure and mark API enrichment TODO done Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
46 lines
2.5 KiB
Markdown
46 lines
2.5 KiB
Markdown
# Huizenbot
|
|
|
|
## Doel
|
|
|
|
Periodiek scrapen van makelaarswebsites in Delft en Schiedam, nieuwe woningen opslaan in SQLite, en pushnotificaties sturen via Home Assistant. Draait als één Docker container op homelab met cron.
|
|
|
|
Dit draait op het moment al, dus we zijn nu enkel bezig met uitbreidingen en verbeteringen.
|
|
|
|
|
|
# AIDE - An IDE for your Agent
|
|
This project uses AIDA to support agents, it increases the robustness of edits and reduces token costs.
|
|
|
|
You can always use `aide help` for further info, and use it also on each subcommand. If you do, edit what you learned into the agents.md so we don't have to spend tokens on it repeatedly.
|
|
|
|
|
|
## Using aide effectively
|
|
|
|
**Always start with aide for codebase exploration — not Read or Grep:**
|
|
- Use `aide outline <file>` first to get the function map of any file before reading it
|
|
- Use `aide source <file> <sym>` to read individual functions — never Read a whole large file just to find one function
|
|
- This is especially important for large files like `ssr.py` (84KB+) where Read truncates
|
|
|
|
**For edits:** `aide insert` is fragile with large inputs (see note above) — fall back to the `Edit` tool for anything non-trivial. `aide replace` is fine for small targeted changes.
|
|
|
|
## What aide can do (quick reference)
|
|
|
|
| Command | What it replaces |
|
|
|---------|-----------------|
|
|
| `aide outline <file\|dir>` | `Read` whole file for structure; `ls` + loop |
|
|
| `aide source <file> <sym>` | `Read` whole file for one function |
|
|
| `aide callers <sym>` | `Grep` for call sites |
|
|
| `aide search <term>` | `Grep` across the project |
|
|
| `aide replace <file> <sym> <msg>` | `Edit` / `sed` for symbol-level changes |
|
|
| `aide replace … --lines N-M <msg>` | `Edit` for intra-function line edits |
|
|
| `aide remove <file> <sym>` | Manual splice to delete a symbol |
|
|
| `aide insert <file> <msg> --after <sym>` | Manual splice to add a new symbol — **insert one function at a time**; large messages cause bash to be killed |
|
|
| `aide rename <file> <old> <new>` | Manual find-and-replace of a name |
|
|
| `aide log` | Log related to the undo command; see which files changed in which order |
|
|
| `aide annotate <file> <sym>` | Persist a non-obvious invariant or gotcha for a symbol |
|
|
| `aide context <file> <sym>` | Read the stored annotation before editing |
|
|
| `aide review [path]` | Check for annotations invalidated by recent edits |
|
|
|
|
Line numbers in `--lines N-M` are **1-based and relative to the symbol's first
|
|
line** (line 1 is the signature / opening line of the symbol). This means they
|
|
are stable across edits elsewhere in the file.
|