Skip to content
Memory & Knowledge

Auto-Captured URLs

3 min read

How Armbrain detects and tags URLs you share, making links searchable and preventing repeat link requests.


The Problem

During client work, you share URLs constantly -- Google Drive folders, campaign dashboards, competitor websites, reference articles, shared docs. In a normal conversation, those links are lost the moment the session ends. The next time you need that link, you have to dig through chat history or ask the client again.

Armbrain detects URLs in any memory you store and tags them for easy retrieval.


How It Works

Whenever you store something, a full memory, a quick note, or mention it in conversation, Armbrain scans for links. If it finds any, it automatically:

  1. Adds url and shared_resource tags to the memory
  2. Returns the captured URLs in the response so you can confirm they were picked up

This happens silently. You do not need to do anything special -- just mention a link naturally.

"Remember: Acme's brand guidelines are at https://drive.google.com/drive/folders/abc123"

Armbrain stores the memory as usual, detects the URL, and adds the tags. The response includes:

{
  "memory_id": "...",
  "summary": "Acme's brand guidelines are at https://drive.google.com/dri...",
  "urls_captured": 1,
  "urls": ["https://drive.google.com/drive/folders/abc123"]
}

Finding URLs Later

Because URLs are tagged, you can search for them:

"What links have I shared for Acme?"

Or search by what the link was about:

"Where are Acme's brand guidelines?"

Both approaches work. The first uses tag-based filtering. The second uses semantic search. Memory content around the URL provides context for matching.


What Gets Captured

SourceAuto-Captured?
Links in something you rememberYes
Links in a quick noteYes
Links mentioned in meeting transcriptsYes, when the transcript is ingested
Links inside code blocksNo -- skipped to avoid false positives
Localhost / 127.0.0.1 URLsNo -- system URLs are skipped
api.armbrain.io URLsNo -- internal system URLs are skipped
URLs longer than 500 charactersTruncated for display but still stored

Real-World Examples

Sharing a Client Resource

You: "Store this: Acme's Q2 campaign tracker is at
      https://docs.google.com/spreadsheets/d/1abc123/edit"

Armbrain: Stored. 1 URL captured.

Three weeks later:

You: "Where's Acme's campaign tracker?"

Armbrain: "Acme's Q2 campaign tracker is at
https://docs.google.com/spreadsheets/d/1abc123/edit
(stored March 5, tagged: url, shared_resource)"

Multiple URLs in One Memory

You: "Remember: Acme's competitor analysis sources are
      https://www.competitor-a.com and https://www.competitor-b.com/pricing"

Armbrain: Stored. 2 URLs captured.

The response shows the first 5 URLs found. All are tagged on the memory.

URLs During Transcript Ingestion

When you ingest a meeting transcript with URLs, those URLs are preserved in extracted memories and tagged the same way.


What Is NOT Captured

  • URLs are not crawled or summarized. Armbrain stores the URL as a reference, not the page content. It does not visit the link.
  • URL shorteners are stored as-is. A bit.ly link stays as bit.ly -- Armbrain does not expand it.
  • No bookmark management. This is not a bookmark tool. URLs are just another type of knowledge attached to memories. They follow the same search, decay, and handoff rules as any other memory.
  • No validity checking. Armbrain does not check if the URL still works. Dead links stay in memory until you hide or replace them.

Deduplication

If you already tagged a memory as a link, Armbrain leaves your tag alone. Auto-capture fills in only when no link tag exists.

Saved links benefit from smart dedup. Store the same link with similar context twice and Armbrain updates the existing note.


Key Details

  • Automatic and silent. No configuration needed. URLs are detected and tagged on every memory store.
  • Tags added: url and shared_resource. These are appended to any existing tags on the memory.
  • First 5 URLs returned. The response shows up to 5 detected URLs. If the content has more, all are tagged but only the first 5 appear in the response.
  • Code blocks are excluded. Fenced code blocks (triple backticks) and inline code (single backticks) are stripped before URL scanning to avoid capturing example URLs from technical content.
  • Works across all clients. URL capture is per-memory, scoped to the active client mind like everything else.