Community

Share your best AI workflow. We could show it to 2M+ people.

Every day, we feature the community's top-voted AI workflow in The Rundown newsletter. One post will put you on the radar of top founders, hiring managers, and operators across the industry.

Welcome!

Build a Local, Bitemporal Memory System for Claude Projects

I built a local memory system for Claude that is a bit different from others I have seen. The reason was familiar: repeated context loss and gaps, even within projects. I am not technical—I come from a healthcare background—so it was essentially vibe-coded, but I used a method I had not seen elsewhere. I started by interviewing Claude about what would be useful to it, rather than beginning with only what I wanted. The three biggest gaps were the rationale behind decisions, current versus historical states, and the difference between global and project-level detail. We also identified ways memory can go wrong, including stale facts being confidently asserted as truth and rejected ideas resurfacing. Claude’s built-in memory stores flat topics without entity links, captures what but not why, is not well temporally grounded, and is gated by Claude. I researched other memory builds, from homebrew systems to enterprise tools, and found that they generally fell into three groups: - Vector dumps, which lack rationale and supersession and can become stale - Plain Markdown with grep or embeddings, such as Basic Memory, which similarly lacks real temporal grounding and an entity graph - Heavyweight knowledge-graph stacks such as Neo4j, LangChain, and GraphRAG None of these did what I wanted. My store holds entities only, not transcripts. It stores decisions, observations, people, and projects connected by typed edges. Each entry has content, a scope—either portfolio-worthy or working detail for one project—a rationale, and information about where it came from. The system is also bitemporal, so it distinguishes what is current from what is not. Nothing is edited in place: a correction adds a new assertion instead of overwriting the old one. Underneath, it uses SQLite, with sqlite-vec for semantic search and FTS5 for keyword search. Nothing writes automatically. Claude has to propose a memory, and I have to approve it. This prevents the store from filling with noise, keeps it token-efficient, and acts as a governance lever. MCP links Claude to my server. It is local-only at present, although there is potential to add remote access in the future. The server provides instructions for making proposals, so the system is theoretically portable, and I also created a Claude skill to accompany it. I ran the build across multiple projects and created specialist projects for different roles: - A central development and oversight project served as the decision-maker and prompt-writer. - Cowork handled the building and tested each module inside a sandbox. It had no authority to change decisions, and I used a fresh project for each stage of the build. - I handled deployment separately by typing every command on the server and pasting the output back. - I repeated Claude’s Cowork-authored tests on the actual server. Real-world testing after deployment identified only minor issues, which were quick to fix. This separation was administratively heavy because I had to keep switching between projects as tasks started and finished, but it caught several errors in the rules and code. Despite my lack of technical knowledge, the project is now well documented and I have room to develop it further. I may eventually put it on GitHub. It has become a standard component of my workflows, my projects are tracked much better, and Claude and I are on the same page more often.

Tools used
Industry
4

How I Governed Two Claude Agents to Build and Test a Live Word Puzzle

I'm not a professional developer, but I built Sujido, a live word puzzle, with multiple AI agents. For months, they gave me bloat, lost context, and slop, and neither I nor the models could untangle what had been decided or why. I eventually settled on two agents: one Claude instance that plans and reviews, and another that builds. I imposed rules on both, one failure at a time. None of these rules would surprise a professional engineering team, but nobody handed them to me. That's the key lesson I learned: agents won't bring the discipline for you. You have to impose it. When I showed the first game revision to strangers, their verdict was that the first half was "boring" and the second half was novel. It was hard news to hear about my baby, but I took the feedback to heart and cut the game in half. That required surgery on code tangled across both halves, followed by a rebuild under the rules below. Before the rebuild, a separate AI audit graded the codebase B−. Afterward, it graded it A−. The deployed site shrank by 97.5%, and every serious finding was fixed and locked in by an automated test. The models didn't change drastically, but my operating rules did. Step-by-step: 1. I wrote a constitution before the first prompt. The repo holds what every agent must read before working: `CLAUDE.md` files for the project as a whole and for each major part of the code, a collaboration protocol for how the agents and I work together, a spec for the core data format, and a decision log. The data format is changed there first and then in code. Nothing is remembered unless it is written down. That's my life as well. :) 2. I split the work by role, not by task. One Claude instance is the strategist: it writes briefs, reviews reports, and never commits code. Claude Code in VS Code is the builder: it executes the brief, writes the tests, reports back, and never releases. Neither agent can approve its own work. 3. I made every job start from a written brief, and I never edit briefs. Each brief is committed to the repo with an exact scope, such as "do X only, do not begin Y." If plans change, a dated amendment states what it supersedes. The builder may skip a risky item with a written reason; skipping is better than forcing it. 4. I used mock-ups with real data instead of descriptions. Anything I will look at gets a mock-up, and I approve it before any code is written. I learned this when a status report described only in words arrived on my phone formatted as a wall of text. The approved mock became the spec, and the tests pin the output to it. 5. I proved that every test could fail. No test is trusted until it has been run against deliberately broken code and caught the bug. A test suite that has never failed hasn't proven anything. 6. I verified reports against the real repo. Agent reports drift. One summary said players rated a puzzle "just right" when the log said "too easy." An audit said there were about 25 unused functions; a recount found 29. The strategist spot-checks load-bearing claims against the actual files and data before anything ships. 7. I built gates the agents can't talk their way past. All work lands on a branch that auto-deploys to a test site. GitHub Actions lints and runs the Python and headless-browser tests on every push. A git hook refuses direct pushes to production. Releases are fast-forward merges that only I perform, after CI is green and I've tested the build personally. The live site shows the release's commit ID, and I check it before calling it shipped. Nothing merges automatically. An agent's "looks good" is just another report, and reports drift. 8. I gave the system a memory. Every session ends by updating the decision log and a "resume here" document, so the next session—a fresh model with no recollection—picks up exactly where the last one stopped. Without this, every session starts by relitigating old decisions. 9. I let the data and end users overrule me. A scheduled GitHub Action turns player telemetry into a daily report. It showed that the difficulty dials I assumed mattered did not predict what players found hard; what mattered was how misleading the starting arrangement was. When testers were confused by the tutorial, I rebuilt it even though I had already approved it. Player feedback about their own experience outranks my earlier rulings. AI agents are velocity multipliers, but they multiply bad structure as quickly as good code. The rules came from me, not the models: the AI writes the code, while the rules, gates, and written record keep the process honest. See the result at Sujido.com. Finding the anagram is the easy part; sliding it into place is the hard part. One board took me 902 moves. My S.O. solved it in 242, and I haven't heard the end of it. Try to break it!

Tools used
Industries
#agenticcoding#github#multiagent#nondeveloper#testing
2

Use ChatGPT to redesign a messy computer archive

I use ChatGPT to analyse and redesign the underlying structure of a messy computer archive. I first generate a folder tree locally with a Python script provided by ChatGPT and saved as a BAT file. The tree shows the hierarchy of folders and filenames, giving ChatGPT a broad view of how the archive is currently organised. From that structure, ChatGPT can identify where the organisation is too fragmented or too broad. For example, a client folder may contain ten nested subfolders with only a few text files in each, making the structure more complicated than the content requires. Elsewhere, hundreds of photos, screenshots, or documents may all sit in one folder, suggesting that more meaningful categories would help. ChatGPT can then propose a revised structure with more or fewer levels, depending on the actual content. It can also suggest more consistent naming conventions for folders and files, identify recurring subjects or topics of interest across the archive, and point out categories that already exist implicitly but have never been organised deliberately. For larger changes, I can ask ChatGPT to help create a copied version of the archive using the proposed structure rather than immediately reorganising the original files. This gives me a working prototype of the new system. I can browse it in Windows Explorer, see whether the categories make sense in practice, and adjust the structure before making any permanent changes. The result is not just a cleaner folder tree. It is a way to use AI to discover the information architecture hidden inside years of accumulated files and turn it into a structure that better reflects how the content is actually used. Step-by-step: 1. I use ChatGPT to generate a Python script that creates a folder tree locally, then save the script as a BAT file. 2. I use the folder tree to show ChatGPT the archive’s hierarchy of folders and filenames. 3. I ask ChatGPT to identify areas that are too fragmented or too broad, such as deeply nested client folders or folders containing hundreds of mixed files. 4. I ask ChatGPT to propose a revised structure with an appropriate number of levels, along with more consistent folder and file naming conventions. 5. I ask ChatGPT to identify recurring subjects and categories that already exist implicitly in the archive. 6. For larger changes, I ask ChatGPT to help create a copied version of the archive using the proposed structure instead of changing the original files immediately. 7. I browse the copied structure in Windows Explorer, assess whether the categories make sense in practice, and adjust the system before making permanent changes.

Tools used
Industry
#folderlayout
1

Clean Up Near-Duplicate Artwork Photos with an AI Visual Checklist

Clean up near-duplicate artwork photos with a visual checklist THE PROBLEM I had hundreds of photos of my handmade collages. Some showed the same work photographed at different times, from different angles or against different backgrounds. Others were cropped versions, detail shots or useful making-of photos. The duplicate finder in my image manager missed real matches and suggested unrelated collages instead. Simply keeping one file from each group would also have thrown away useful material. THE WORKFLOW 1. Export a working set and preserve the filenames. I exported the images from Eagle. Smaller copies made the collection easier to upload, while the original-resolution files stayed on my computer. Keeping the filenames intact made it possible to apply decisions to the originals later. 2. Ask AI to compare the artwork, not just the whole photograph. The comparison looked for matching local image details and their relative positions. This helped connect photos despite changes in angle and background. Candidate groups still needed review: two collages might contain the same clipping, and a detail photo might overlap with a wider shot without being redundant. 3. Turn the results into a visual decision page. The AI produced a standalone HTML file with photos grouped side by side and their original filenames underneath. I requested a “Keep” checkbox beneath each candidate and a category dropdown: “Collage” or “Making of”. Multiple images could stay in either category. One photo might show one part clearly while another preserved a different part better. I made the decisions; the AI did not choose a winner automatically. 4. Validate and export my choices. The page flagged any group with nothing selected and any selected photo without a category. Photos without a confirmed match were preserved separately. A download button exported my decisions as a small JSON file, which I sent back to the AI. 5. Generate a local cleanup script from that exact selection. The resulting Windows script checks the expected files, asks me to confirm the folder, sorts the retained photos into “collages”, “making of” and “loose items”, and sends rejected photos to the Recycle Bin. It targets the ordinary export folder, not Eagle’s internal library. The loose items can then be sorted manually before reimporting. WHAT THIS PRODUCED From 296 photos, the review grouped 204 into 90 candidate groups and left 92 without a confirmed match. My final choices retained 96 collage photos and 23 making-of photos, plus all 92 loose items: 211 retained, 85 designated for removal. The checklist and selection were completed, and the script was generated. At the time of writing, I had not yet run the cleanup on Windows. WHY IT HELPED The key was separating three jobs: finding likely matches, deciding what matters, and applying those decisions to files. “The same artwork” does not necessarily mean “an unnecessary photo”. A visual checklist let me make those distinctions without manually tracking filenames. STARTER PROMPT “I have photos of the same artwork taken from different angles and against different backgrounds. Find candidate matches using details within the artwork, and distinguish duplicates from details, changed versions and making-of photos. Create a standalone HTML review page with original filenames, a Keep checkbox and a category dropdown for each candidate. Allow multiple retained photos per category. Flag empty groups and selected photos with no category. Preserve unmatched images. Let me export my choices as JSON. After I return the selection, generate a script that validates the original filenames, sorts retained files into the chosen folders and moves only rejected files to the Recycle Bin after showing the target folder and counts. Do not choose or delete files on my behalf."

Tools used
Industry
#creativedatabasecleanup
2

Build a Searchable University Seminar Directory with Claude Code

I used Claude Code to find scientific seminars hosted by colleges and universities across the US and collate them into a single, searchable list. Researchers can use it to find talks that match their interests near them. The site, seminarsearch.org, runs mostly on free-tier SaaS services, costs me $5 per month to operate, and currently supports a few thousand users. The same pattern could be adapted to collate all 5K runs in the US, tennis matches, craft shows, quilting bees, or any other type of event that interests you. I started by explaining to Claude what I wanted to build. We then spent a few hours exploring where and how to identify seminar calendars at universities across the US, which was arguably the hardest part. We developed a pluggable framework with scraping plugins for the common CMSs used by universities, along with iCal parsers, HTML parsers, and JavaScript interpreters to handle the complexity of normalizing content from hundreds of departmental websites. Once we had the seminar-scraping infrastructure, we built a database schema in Supabase and simple APIs to create, read, update, and delete records. The APIs are written in Python and hosted on Railway for $5 per month. We used Vercel to deploy a simple React-based frontend for presenting the data. Now I can ask Claude to implement a feature or add a new university to the list of sources. It figures out where the data is hosted, creates entries for the university and its departments, finds their seminar feeds, collects the seminar data, puts it into the database, and runs GitHub Actions to send alerts to registered users. The scraping job runs once a week to collect new data, and it also runs through GitHub Actions. I wrote zero code during this process and have never even looked at the code. I only had to paste a few error messages from Railway into Claude so it could debug them, and there were only a few errors. Since building seminarsearch.org, I have cloned the infrastructure and codebase and modified it to build a site that collects road bike rides and group mountain bike rides across the country. The system is highly extensible to new areas of interest and is useful when traveling or living in a large metropolitan area where it is difficult to keep track of all the opportunities available for your interests. Step-by-step: 1. I explained to Claude Code that I wanted to build a searchable directory of scientific seminars hosted by colleges and universities across the US. 2. We explored where and how to identify university seminar calendars, focusing on the challenge of finding sources across many institutions. 3. We built a pluggable scraping framework with plugins for common university CMSs, plus iCal parsers, HTML parsers, and JavaScript interpreters. 4. We created a Supabase database schema and simple Python APIs for creating, reading, updating, and deleting seminar records. 5. We hosted the APIs on Railway for $5 per month and deployed a React-based frontend on Vercel. 6. We configured Claude to add universities and implement features by finding source locations, creating university and department records, locating seminar feeds, collecting seminar data, and adding it to the database. 7. We used GitHub Actions to run the weekly scraping job and send alerts to registered users. 8. When Railway returned errors, I pasted a few error messages into Claude so it could debug them. 9. I cloned and modified the infrastructure and codebase to create additional sites for road bike rides and group mountain bike rides across the country.

Tools used
Industries
1
pro

Build an Auditable Per-Client Meter for Claude Usage Billing

I built a workflow to reconstruct auditable, per-client billing for Claude usage after my Anthropic bill tripled in one month and I discovered there was no reliable way to see why. I run a solo consulting practice on a Max plan and pass AI costs through to clients. In September, my extra usage reached $1,805.76 in nineteen days. The usage page attributed 100 percent of one week to "Cowork" without session detail. Auto-reload was enabled by default with no spending limit, and the only usage I could independently verify—my local Claude Code logs—accounted for about $245. The support bot twice described analytics features that did not exist, including a per-day view it later retracted. When I finally reached a human, I got the truth in writing: Max subscribers have no session-level or per-day reporting, exports are Enterprise-only, and Cowork has been cloud-only on consumer plans since August. The Enterprise path to a readable meter starts at twenty seats. I am one person, so I built my own meter. The irony is that I used Claude to design and code it. Claude Code sessions write logs on my own machine. I price them at list rates with the open-source `ccusage` tool and attribute each session to a client by repo folder. That creates the measured pool: real receipts with no allocation. Other CLIs in the same logs, such as OpenAI Codex, are excluded automatically. Chat and Cowork run in Anthropic’s cloud and leave nothing on my disk, so the remaining overage becomes a cloud pool. I split that pool using evidence my workflow already produces: every Cowork document batch leaves a directive file, snapshots, and a report on disk. A Python script counts executed batches per project and measures the number of bytes each one rewrote. The script splits the cloud pool independently by batch count and byte volume, bills the midpoint, and shows both derivations so each client can see the bracket. Every column ties back to the dashboard total to the penny. A second script pulls per-account AWS charges from Cost Explorer because each client has a separate AWS account. Shell aliases make each report a one-command operation. A Claude skill and a monthly scheduled task turn the outputs into a draft invoice that I approve before anything is sent. The result is that a vendor hands me one unexplained number each month, while I hand my clients an evidence file. Month-end billing takes five minutes. It should not have been necessary to build this, but until consumer plans get real usage analytics, this is how I see in the dark. Step-by-step: 1. I collect local Claude Code session logs and use the open-source `ccusage` tool to price them at list rates. 2. I attribute each Claude Code session to a client by repo folder and automatically exclude other CLIs, such as OpenAI Codex, from the measured pool. 3. I treat the remaining overage from cloud-based Chat and Cowork usage as a separate cloud pool because those services leave no usage logs on my disk. 4. I use Cowork’s directive files, snapshots, and reports to identify document batches, then use a Python script to count executed batches per project and measure the bytes each batch rewrote. 5. I split the cloud pool independently by batch count and byte volume, bill the midpoint, and show both derivations as a client-facing bracket. 6. I verify that every column ties back to the dashboard total to the penny. 7. I use a second script to pull each client’s per-account AWS charges from Cost Explorer. 8. I run the reports through shell aliases, then use a Claude skill and a monthly scheduled task to create a draft invoice for my approval before sending it.

Tools used
Industries
#aicosttracking#automation#awscostexplorer#ccusage#usageanalytics
3

Turn an XPath Lookup Bug into a Reproducible Debugging Walkthrough

I turned an open-source XML lookup fix into a debugging walkthrough that other developers can run. I used Codex, Python, and GitHub to document a bug where a document style containing quotation marks could be saved but then fail during retrieval because its name was interpolated into an XPath expression. Step-by-step: 1. I gave Codex the original patch and inspected the affected code, tracing the stored value through the public API, the wrapper, and the XML library. 2. I extracted the smallest standalone reproduction with `lxml`. It included a name containing both single and double quotes and kept the failing lookup visible. 3. I replaced interpolation with a bound variable: `styles.xpath("style[@name=$name]", name=name)`. I checked that the wrapper forwarded variables while preserving its namespace mapping. 4. I ran both versions. The interpolated version raised `XPathEvalError` in my reproduction. Binding the value matched five exact names, while an absent name returned no match. 5. I published the explanation, executable example, and upstream patch together. I inspected the rendered article and links and disclosed AI assistance. A prompt to reuse: "Reduce this lookup failure to a runnable example. Keep the failing case, show the fix, and check ordinary text, both quote types, custom namespaces and a missing value. Report which checks actually ran." The original fix had already been merged, so this workflow documents it. Broader service behavior needs separate tests. I used my existing Codex and local Python setup and did not measure time savings. I am Hồ Khắc Huy, a freelance software engineer. This is my independent open-source work. The linked article includes the runnable example, upstream contribution, and my contact details: https://github.com/builtbyhuy/builtbyhuy/blob/main/notes/2026-09-06-xpath-variables.md

Tools used
Industry
1

Build a Local Creative Research Database with GPT and PeopleSparkles

I built a workflow called PeopleSparkles for researching people connected to creative fields, schools, collectives, residencies, local art scenes, and cultural networks. The workflow starts from a defined group of people, for example teachers, alumni, artists, current or former members of an association, residents, or associates connected to a specific academy, organization, or cultural scene. A typical research request can be as simple as: “Look at this art website and identify all current and former residents and associates. Build a list. Then research them in batches of ten, checking their websites and other relevant sources, and write a short description of their work. Deliver the results in a format that can be imported into my local database.” Before each new research run, I provide GPT with a ZIP containing the current state of the PeopleSparkles database. This means the research starts from the existing corpus rather than from scratch. New people can be added, existing entries can be expanded, and previously researched people can be recognized before new material is prepared for import. The actual database lives locally on my computer. Apart from the initial development of the code and the research needed to create new lists of people, the database itself runs locally. Once a new batch has been researched and imported, browsing, organizing, scoring, annotating, and using the material does not require the whole corpus to be sent back for analysis. The database also generates a human-readable HTML version with a designed layout, so the research is not trapped inside raw data or spreadsheets. I can browse the people and their notes visually as a small personal research publication, while the underlying structured data remains available for future additions and processing. The “Sparkles” part is personal. I can add my own notes and scores to each person to capture whether their work sparked something in me, and if so, how. That might be curiosity, recognition, inspiration, aesthetic attraction, a strong question, a surprising association, or simply the desire to look again. This means the database does not only record who someone is and what they make. It also records my evolving relationship to their work. Over time, that creates a second layer on top of the research corpus: not just a map of creative people, but a map of resonance. The database also includes a “Surprise me” function that brings up a person from the collection without me choosing them deliberately. This helps break habitual search patterns and allows older, less obvious, or previously overlooked entries to resurface. Someone I barely noticed months ago can suddenly become relevant in a completely different creative context. The purpose is not to create conventional biographies. I am interested in the sparks around a person: what they make, the media and themes they work with, the organizations or people they connect to, and which traces may lead somewhere unexpected. This is particularly useful for creative ecosystems where information is fragmented across artist websites, academy pages, exhibition archives, old posters, association websites, interviews, catalogues, and small cultural organizations. The workflow gathers those fragments into a cumulative research corpus. It also allows the research to grow organically. One artist may lead to a collective, a teacher to a former student, an exhibition to another maker, or an old membership list to someone whose work would never have appeared in a conventional search. In simple terms: existing local database → new source or people list → GPT-assisted discovery and research in batches → import-ready structured data → local database → HTML browsing, notes and scores → surprise rediscovery → new creative connections The result is a living creative research database that combines external research with personal resonance, so I can not only discover people, but also trace which work actually sparks something in me over time.

Tools used
Industry
2

Use GPT to Check Bureaucratic Complaints Against the Written Record

I built a workflow to examine complaints I had about a local bureaucratic service and check whether my account of what happened was supported by the written record. I was concerned about delays, incomplete handling, and the way my case progressed after I gave feedback about a harmful aspect of the service and asked for a different person to handle the dossier. That request was refused. Afterwards, I felt that the process had become slower, more confusing, and more prone to mistakes. Rather than asking GPT to confirm that the service had handled things badly, I used it to test my own interpretation against the evidence. I asked GPT to review the relevant emails and dossier communications, reconstruct the chronology, and identify requests, replies, delays, unresolved issues, and changes in how the case was handled over time. We then compared the periods before and after my feedback and request for reassignment. The central questions were deliberately neutral: Were my complaints grounded in the correspondence? Did the handling of the dossier objectively become slower or more incomplete afterwards? Were there concrete errors or unanswered questions in the record? Or was I remembering the experience as worse than the documentation supported? This distinction mattered to me. The workflow was not designed to produce a verdict or turn frustration into evidence after the fact. It was designed to challenge my assumptions and separate what I felt from what could actually be demonstrated. Where the documentation supported a complaint, we could point to the relevant chronology, delays, unanswered questions, or inconsistencies. Where the evidence was incomplete or ambiguous, that was noted too. The result was a more grounded account of the case: not “I know this was handled terribly,” but “these are the parts of my experience that are supported by the written record, these are the parts that remain uncertain, and this is where the timeline changed.” In simple terms, the workflow was: emails and dossier communications → chronology reconstruction → before-and-after comparison → review of delays, errors, and unresolved issues → evidence check against my complaints → a grounded account of what can and cannot be supported. What I liked about this workflow was that it used AI as a reality-checking tool rather than an agreement machine. It helped me test whether my criticism was actually anchored in the record before I relied on it in further communication. Step-by-step: 1. I gathered the relevant emails and dossier communications about my case. 2. I asked GPT to reconstruct the chronology and identify requests, replies, delays, unresolved issues, and changes in how the case was handled. 3. I compared the period before and after my feedback about a harmful aspect of the service and my request for reassignment, which was refused. 4. I examined whether the record showed that the process became slower or more incomplete, and whether it contained concrete errors or unanswered questions. 5. I separated points supported by the documentation from points that remained incomplete or ambiguous. 6. I used the resulting chronology and evidence check to create a grounded account of what my complaints could and could not demonstrate.

Tools used
Industry
#objectiveview
2

Build an incremental archive to recover scattered creative ideas

Creative ideas often appear in the wrong place: inside unrelated chats, jokes, photographs, or practical problems. The problem usually isn't a lack of ideas. Ideas are scattered across time and conversations, while humans are bad at holding dozens of active threads at once. I built this workflow to turn scattered conversation history into a recoverable creative idea system. Its job isn't to decide what matters; it's to make sure good ideas can come back. I keep four jobs separate: a local script tracks what has been processed, an extraction model finds ideas and recurring language, a synthesis layer connects related concepts across conversations, and I decide whether an idea is alive and worth doing now. Step-by-step: 1. I export chats roughly once a week so the recent past doesn't disappear before it becomes useful. 2. I use an Incremental Archive to compare exports and mark conversations as New, Changed, Unchanged, or Missing. Only new and changed conversations need extraction. I reprocess changed conversations in full because later context can change earlier meaning. The Incremental Archive decides what changed; Creative Idea Recovery decides what is worth remembering. 3. I extract information conversation by conversation, looking for creative concepts, project ideas, visual motifs, writing fragments, systems, metaphors, recurring language, worldbuilding, and unfinished ideas. 4. I preserve the raw language instead of aggressively normalizing labels. “liminal space” and “The Liminal Space” may later mean different things, while “desert” may belong to the same family without being identical. Raw labels are evidence. 5. I build a lexicon above the extraction layer without replacing the original terms. It records aliases for the same concept with different spellings, variants from the same family with meaningful nuance, subtypes that are more specific, related concepts that are connected but not interchangeable, and concepts to keep separate because they are similar but distinct. I normalize obvious formatting noise without flattening meaning. 6. I periodically review recurring container terms such as autonomy, worldbuilding, or liminal space across the corpus. I don't only ask how often a term appears; I ask what different things it is doing across contexts. 7. I leave the long tail alone. Not every strange one-off phrase needs a taxonomy. The Royal Sleeping Tail™ can remain gloriously unclassified. Rare ideas can stay raw until they recur, become useful, or connect to something else. 8. I build a browseable creative inventory so I can ask questions such as: - Show me creative concepts I never made. - Which visual ideas disappeared? - Which concepts resurfaced several times? - Which unfinished ideas fit low physical energy? Each concept can include its name, description, sources, recurrence, status, and timing. 9. I track state lightly so the system doesn't keep rediscovering something already hanging on the wall. 10. I use Timing rather than Priority because creative ideas aren't invoices. I classify them as Now when they are alive and actionable, Someday when they are valuable but not right for this period, Maybe when they are worth preserving, and Unreviewed when they haven't been assessed yet. I make this decision, not the system. 11. I let ideas resurface intelligently by combining timing with recurrence. For example, I can ask, “Show me Now ideas requiring little physical effort” or “Which Maybe ideas have resurfaced three or more times?” An idea that keeps returning may simply be waiting for the right conditions. 12. I use recent scans as short-term continuity. They can say, “You mentioned this once. It seemed meaningful. Here it is again.” I can then answer, “Still alive,” “That passed,” or “This is ready now.” Retrieval is the intervention. 13. I use evidence to challenge unreliable self-assessment, such as “I never have good ideas.” The archive doesn't respond with motivational fluff; it points to evidence of progress that can be hard to feel from inside the current day. 14. I treat renewed access as the real product, rather than the archive itself. The system exists so I can say, “I know I thought about this before. Find it,” “Show me what I already made possible but forgot existed,” or “Give me something worth making today.” When my brain says, “I never have good ideas,” the system can point toward the pile of evidence and say, “I dispute this claim.” For non-octopuses. 😑🐙 A creative life shouldn't require eight arms, perfect memory, and seventeen open mental tabs.

Tools used
Industry
#retrieval
0