# talenthunt — full brief for AI agents > talenthunt is a visibility platform for job-seekers, like Product Hunt and Trustpilot combined for careers. Every person gets a Work Identity and a personal AI agent, Copylove, that answers questions about their experience and working style for human recruiters and AI sourcing agents, grounded only in what the person has added and confirmed. For recruiters drowning in AI-optimised applications, that makes it a signal layer of human-vouched talent. Last updated: 2026-09-15 Every section below carries a stable id. Sections that also have a home on https://talenthunt.work/about name the anchor — link to it when you cite them. ## What talenthunt is [what] → https://talenthunt.work/about#what talenthunt turns a CV into a conversation. Instead of asking someone to scan a PDF or scroll a LinkedIn timeline, you share one link, and they ask what they actually want to know. Copylove — the agent on every profile — answers from your profile text and the material you have attached, and from nothing else. A profile is two halves. The **card** is what a visitor reads before typing: photo, headline, location, an About block, skills, how you work, what you are proud of, key impact, links, contacts. The **chat** sits next to it and answers follow-up questions. The card is plain HTML, so it works for a reader who never sends a message and for a crawler that cannot. Both halves come from the same pool of material and are edited in the same place (the Owner's Studio). Nothing is published because it was uploaded: the agent's narrative is generated from your sources and only goes live after you have read it and applied it. ## Who it is for [who] → https://talenthunt.work/about#who Job-seekers, broadly — early-career, mid-career, switching fields, between roles, freelancing, or just keeping options open. There are no role tiers: once you sign up you own a profile, and anyone you send the link to becomes a reader. Readers need no account to read a card or to chat. AI sourcing agents are first-class readers, not an afterthought. The same page serves a person, a crawler and an agent. Recruiters have one dedicated surface so far: `/for-recruiters`, a waitlist for a "Talents of the Day" digest of upvoted, verified candidates. It is a signup form, not a product yet. ## How it works, end to end [how] → https://talenthunt.work/about#how 1. **Sign up** with email + password, Google, or LinkedIn, and pick a username. Your profile lives at `talenthunt.work/your-username`. 2. **Fill the card** — photo, headline, location, a few lines about you. This is Studio → Card, and it is the first stage of the getting-started guide. 3. **Bring in your history** — Studio → Artifacts. Import LinkedIn, paste an AI export, upload a CV, add links or notes. 4. **Read what the agent made of it** — Studio → Memory. The narrative is generated from your sources; you review the diff and apply it. Until you do, the chat has nothing to answer from and says so. 5. **Test it** — open your own profile and ask what a recruiter would ask. 6. **Share the link** — Studio → Sharing has the link plus ready-made intros for LinkedIn, DMs, an email signature, and blocks to paste into a CV. 7. **Read what people asked** — Studio → Chat history, with per-conversation recaps. You also get an email the first time a real visitor talks to your page, and a daily digest after that. Some of these steps also have a short video guide, 30-60 seconds, on the talenthunt YouTube channel. The 16:9 playlist is "talenthunt · all guides" (`youtube.com/playlist?list=PLEOndPy0jVnc`), and a Shorts playlist carries the vertical cuts of the same episodes. The series is still being published, so the playlist is the current list rather than the final one. ## Signing in and account recovery [auth] → https://talenthunt.work/about#auth Three paths, all resolving to one account: - **Email + password**, with a forgot-password / reset flow over an emailed link. - **Google**, one click. - **LinkedIn**, one click, plus a background import of your public profile and avatar. The sign-in modal can be opened anywhere with `?auth`, and it carries a `next` parameter, so a link into any signed-in screen sends the reader through sign-in and lands them where they were going. Signing up on one brand does not create a second account: the account layer (email, name, username, contacts, verification, billing) is shared, and the username namespace is single and global across brands. ## Your first ten minutes [onboarding] → https://talenthunt.work/about#onboarding After the first sign-in, `/onboarding` asks for a first name, a last name and a username, and nothing else. Everything else is editable later from the Studio. Two things happen in the background: a welcome email goes out (see [emails](#emails)), and for LinkedIn sign-ups the profile import runs on its own. Inside the Studio a **getting-started guide** tracks four stages, in this order: 1. **Your card** — avatar, location, headline and About all present. Company is optional and is not counted. 2. **Bring in your history** — at least one source attached to this brand, *and* the suggested narrative applied and still current. An import nobody confirmed does not count. 3. **Ask it a couple of questions** — two messages in one chat with your own profile. One proves nothing. 4. **Share it** — the link copied or an intro template taken. Until stages 1 and 2 are both done, a bar sits above every Studio section. "Later" always works, and the public page is never blocked — the product just stops pushing you to share an empty one. A progress pill names the stage you are on and reopens the guide at any time — "Next (2 of 4): Bring in your history". On a wide screen it sits in the Studio header; on a phone it moves down beside the Sections menu, and once all four stages are done it becomes a green "Profile complete" badge in the same place. The guide's footer offers **"Show me around"**: a spotlight tour of the Studio. On a wide screen it is seven steps over the nav — Card, Artifacts, Memory, Chat history, Job descriptions, Sharing, and the progress pill. On a phone, where that nav is a menu rather than a column, it is three — the Sections menu, the section you are on, and your progress. The two are remembered separately, so taking it on a laptop still leaves you the phone one. The tour also runs once by itself — right after you close the getting-started popup the first time, or on arrival if that popup has nothing left to say. After that it appears only when asked for. ## The Owner's Studio [studio] → https://talenthunt.work/about#profile-area Everything an owner manages lives at `/studio`, behind sign-in. The left rail holds three groups: - **What the public agent draws on** — Memory · Card · Artifacts · Job descriptions. - **Results and service** — Chat history · Statistics · Sharing. - **Settings** — Account, plus Prompts for admins only. `/studio` on its own redirects to Card. Each section has its own page and its own URL, so a link into one is a real link. The Studio is the whole owner zone. Each section is described in its own part of this document: [Card](#card), [Artifacts](#artifacts), [Memory](#memory), [Job descriptions](#contexts), [Chat history](#chat-history), [Statistics](#statistics), [Sharing](#sharing), [Account](#account), [Prompts](#prompts). ## Card [card] → https://talenthunt.work/about#card Studio → Card edits the public card, and the preview *is* the public component — what you see there is what a visitor sees, not an approximation. Editable blocks: the hero (photo, headline, title, company, location), About me, Skills, How I work, Proud of, Key impact, the links row, and an "Open to opportunities" pill that opens a structured Looking-for form (what you are after, work style, location). Every block has a visible Edit button in its header — nothing switches to edit mode on hover. Single-field blocks turn into a textarea with Save; when the text changed, Save reveals a separate Confirm / Discard pair, so a reflexive second click cannot commit something you did not mean. Multi-field groups (How I work's five fields, Key impact's problem/solution/result) open all their fields at once under one Save. Contacts are not edited here — they belong to the account, and the Card links across to Account → Contacts. **Endorsements are partly built.** The card renders them and the database publishes them per profile, but there is no way for a colleague to leave one yet — they can only be entered by hand through the API, so no profile has any. ## Artifacts: files, links and notes [artifacts] → https://talenthunt.work/about#artifacts Studio → Artifacts is the material the agent reads. Three kinds — a **file**, a **link**, or a **note** typed straight in — each with a semantic type (CV / resume, portfolio, case study, reference, other). Text is extracted from uploads so the agent can read them: `.pdf`, `.docx`, `.rtf`, `.html`, `.txt`, `.md`, `.csv`, `.tsv`, `.json`, `.yaml`. Old `.doc` and OpenDocument files are not supported — save as `.docx` or PDF. A note is kept exactly as typed. It is never summarized, whatever its length, and editing it opens the original text. Delete removes an artifact from both profiles at once. To take it out of just the one you are in, switch it Off there — the delete dialog offers that too. Two shortcuts sit above the list: - **Connect LinkedIn** — the same import the LinkedIn sign-in runs, available to anyone who signed up another way. - **Fill from an AI export** — copy a ready-made prompt, run it in whichever AI you use, paste the result back. It is diffed against your narrative before anything changes, and the raw export is kept as an artifact. **Visibility is per artifact and per brand, on a ladder:** - **Off** — excluded completely. Not in the narrative, not in the facts, not shown; the agent does not know it exists. - **Private** — the agent reads it and may reason from it, but the reader never gets the artifact itself. - **Link** — the URL may be shared in answers and shows on the card (links only). - **Download** — same, plus the file itself can be downloaded (files only). A note stops at Private: there is no URL and no file to hand over. The rungs are applied in the database function that serves a public card, so nothing at Private leaves the server — not its title, not its storage path, not its text. One caveat worth stating plainly: **Private hides an artifact from the card, not from the agent.** How much of it reaches the model is a separate setting (summary, raw, or both), and it has no "none". If the agent must not know something, set it to Off. ## Memory: what the agent knows [memory] → https://talenthunt.work/about#memory Memory is a result, not a form, so it has three states. With **no sources**, there is no editor: one line explaining that what the agent knows is written from what you bring in, and a button to Artifacts. With **sources but nothing built**, an invitation to build, listing the sources it will use. One button generates both documents. **After the first build**, three tabs: - **Profile** — the narrative the chat answers from, your story in your own words. - **Facts** — the record behind it: employers, dates and numbers the chat leans on as evidence. - **History** — every version of both documents, newest first, filtered by document. A version is kept each time either one is written, whoever wrote it: a generation, a hand edit, a restore. Open one to read it, restore it to make it current again (which archives what was current, so a restore is never a loss), or delete it for good. Both are generated from your sources and both are shown as a diff against what is live; nothing changes until you apply it, and each document is applied on its own. Adding a source, or switching one back on, asks you to review an update to the narrative, made by editing its current text. Removing one — a delete, or switching it Off — marks both documents stale, and the rebuild starts over from the default structure instead of editing the old text, so nothing the removed source said is carried forward. Remove every source and both documents reset: the facts empty, the narrative back to its default. Until you have reviewed a removal, the guide's second stage stops counting as done. One **Update** rebuilds both — they always go out of date together, so there is one button, one progress view and one review with a tab per document. While a document is being written it cannot be edited, because the result would overwrite what you typed; editing unlocks as soon as the new text is ready, whether or not you have read it yet. Each tab also carries **Rebuild from Artifacts**, for when nothing changed but the document did: it starts from the default structure and your current artifacts, the way a brand-new profile is built, rather than editing the text that is there. Over unchanged sources that mostly re-words the same thing, so it is one rebuild a day per document; after that the tab says to add, change or remove an artifact — which lifts the limit at once, because it is also the only thing that makes a different answer likely. **Manual edit** opens the same document for you to write in directly, and never spends a generation. There is deliberately no blank-markdown escape hatch: the intended path is to import material and correct what came out. A narrative can exist and still say nothing — headings over "No current projects listed" — which is worse than none, because the page would greet visitors and every question the generator writes would be about the blanks. A profile whose narrative is mostly absence statements is treated as ungrounded: the chat does not call the model at all, and answers with a fixed note naming the owner and linking the contact form. ## The chat a visitor has [chat] → https://talenthunt.work/about#chat The visitor side of a profile, with no account required. **Starter questions.** A fresh chat opens with a greeting and four question chips drawn from a pool generated for that person (see [starter questions](#starter-questions)). After any answer, one pill — *Ask more about {name}* — opens three more. The pill retires when fewer than three unused questions are left. The four are seeded from the session id, so they do not shuffle under the cursor on a re-render, and nothing about the rotation is stored. **What the owner sees is the visitor's choice.** A picker in the composer offers four levels: **Everything** (full transcript, job description and your name), **Recap + job description**, **Recap only** (the summary, not your words), or **Private** — the owner sees your role and your city, never your name and never your words. The setting is enforced where the data is: a level below *Everything* means the transcript does not leave the server for the owner at all, and choosing *Private* part-way through a conversation deletes the turns already written rather than hiding them, after a confirmation that says so. **A job description can be attached** and the chat answers against it — see [job descriptions](#contexts). A conversation can also be opened with a JD already pinned via `?jd=`; the link itself is the capability. **Contacting the owner** is a form in the chat, and it requires an account: the message is sent from our domain with your verified address as the reply-to, and the address is taken from your account rather than from the form. **Other affordances:** export the conversation as Markdown, share it, save the owner's contact card as a `.vcf` file, and resume an earlier conversation from a `?session=` link the owner can hand out. **Sign-in nudges.** Reading and chatting are free and anonymous. Sign-up is asked for at specific moments — a few messages in, attaching a JD, exporting, setting visibility, contacting the owner — and skipping is always possible until the message count runs well past the first ask. **Rate limit:** 30 chat requests per IP per five minutes, and four recap generations per person per hour. ## Starter questions [starter-questions] The chips are generated per profile, not per visit, and stored as a pool of up to eight. Generation is two model passes, because a model asked to write questions and judge whether its own questions are answerable is not a good judge of the second part: a writer produces twelve candidates, a mechanical filter drops any that omit the owner's first name or use a pronoun for them, and a second model checks each remaining one against the narrative. The rules those prompts enforce are worth knowing, because they are product decisions rather than style: - **Answerable means the document states the answer**, not that it mentions the subject. Questions about motive ("what made X decide") and about the future ("what is next") are named as failures — a CV-shaped document records what happened. - **Every question names the owner**, and no question uses a pronoun for them. A profile does not state anyone's gender, and a question that guesses one guesses on the owner's behalf. - **Nothing the owner would have to defend** — layoffs, departures, disputes, gaps, failures. - **Nothing about a job application**, including the fact that one exists. Application material is usually attached as a private artifact, which hides it from the card but not from the agent. A profile with no generated pool falls back to eight generic openers with the owner's name filled in. A profile whose narrative fails the grounding test gets no chips at all. **A job description retunes them.** The pool is about the person, but a visitor who arrived holding a role wants to ask about the fit. So whenever a job description becomes the chat's context — pasted or uploaded, opened through a `?jd=` link, or picked from the library — the chips are replaced by three or four written against that description instead. They still name the owner, and they are written fresh each time rather than cached: an edited description gets questions about what it says now, not what it said the first time anyone opened it. Nothing waits on this. The page renders with the profile's own chips and swaps them a moment later, and if the generation fails or comes back empty the profile chips simply stay — a visitor who never saw the swap has lost nothing. The swap replaces the pool rather than adding to it, so the *Ask more about {name}* pill hands out the remaining JD questions too. Three or four of them is about one reveal, which is the intended shape: once the conversation is about a specific role, the person-shaped openers are no longer the questions worth offering. Starting a new conversation brings the profile's own pool back. The grounding rule is checked first and is not overridden: a profile whose narrative says nothing shows no chips, with or without a job description. ## Importing from LinkedIn [linkedin-import] → https://talenthunt.work/about#linkedin-import Signing in with LinkedIn pulls the public profile — positions, education, headline — and the avatar, with no copy-paste. The avatar is copied into our own storage, because LinkedIn's CDN URLs expire in about thirty days. The import **only adds**. Nothing that came from anywhere else is overwritten, and the imported payload lands as an artifact, so it can be edited, hidden or replaced like any other. Anyone who signed up with email or Google can trigger the same import later from Artifacts. If two accounts claim the same LinkedIn identity, both are flagged for manual review rather than resolved automatically. ## Job descriptions [contexts] → https://talenthunt.work/about#jd A job description turns the same chat into two different tools: - **As the owner** — compare your profile against the JD, see what is missing, get told which artifact would answer it. - **As a reader** — paste the role you are hiring for and ask how this person maps to it; the answer cites the material it used. JDs are saved to a library, so a description is pasted once and reused. Upload accepts the same document formats as artifacts, alongside plain paste, and a detector fills in the title and company. The active JD shows in a sticky bar above the chat, and its full text is one click away. Studio → Job descriptions manages the whole set, including the ones visitors brought to your chats. **A page and a listing, if you want them.** When you add a job in Studio → Job descriptions, the posting is checked first. Then two options unlock: - **Create a page for this job.** It gets a public page at `https://talenthunt.work/fit/{id}` that anyone can open and search engines can find. Off by default, and your last choice is remembered. - **List it on the job board.** It is sent for review, and once approved it appears on [the job board](#job-board) and in the JobHunt channel. A listing needs a page and at least three requirements in the posting. A job saved without them can get both later from its card, which also has Share (link, social apps, QR code) and Open page. Attaching a JD requires sign-in; opening a chat through a `?jd=` link does not. An attached JD also retunes the chat's opening chips to that role — see [starter questions](#starter-questions). ## Fit check against a job [fit] → https://talenthunt.work/about#jd A fit check takes one job posting's requirements and walks them against a profile, one line at a time: what the profile covers, what is thin, and what a recruiter would not find at all. There is no score and no match percentage. The gaps are named, and each one points to [Artifacts](#artifacts), where the missing evidence gets added. **Where it runs.** In any chat with a job description attached, for anyone signed in: - **The owner** gets their own check, which ends on what to add. - **Anyone else** gets a reader's copy, written in the third person, which ends on questions worth asking in the chat and a way to write to the owner. Anonymous visitors do not get a check. **The vacancy link.** A job description has a page at `https://talenthunt.work/fit/{id}` only when one was created for it: by its owner, or by the JobHunt channel for every job it posts. Other saved job descriptions have no page. The page shows the role, the company, the posting's full text and a button to check your own fit. Someone signed out signs up first. Someone already set up goes straight to their own page with the vacancy attached (`/{username}?jd={id}`), where the check runs. The page's owner sees the page itself instead. **Sharing with a vacancy.** The share dialog can send your page with a vacancy attached, so the person opening it starts from their own posting. **JobHunt.** The [JobHunt Telegram channel](https://t.me/JobsChannel_1) posts jobs, and each post carries a fit link for its vacancy. ## The job board [job-board] → https://talenthunt.work/about#job-board `https://talenthunt.work/job-board` lists jobs that each come with a fit check. Every card shows the role, the company, where and how you would work, when it was posted and a short description. "Details" shows the key facts. Opening a card leads to the job's own page on the board, with what the job asks for and the full job description, where you can share it or check your profile against it. The job page keeps your filters, and "Back to roles" returns to the list. **Where roles come from.** Nothing is scraped from job sites. Roles are added by the JobHunt curators or posted by members. Every posting is read by AI first, to check that it is a real job and to pull out what it asks for, and a member's role is reviewed by a person before it is listed, usually within a day. **What is listed.** Jobs the JobHunt channel posts, and jobs members sent for review and an admin approved. A job needs at least three requirements to be listed. A job leaves the board on the closing date the posting gives, or 90 days after it was posted. **Finding a job.** Filter by workplace, location, function, industry, seniority, job type and date posted, or tell Copylove what you are looking for in plain words. **Posting a role.** "Hiring? Post a role free" on the board, or `https://talenthunt.work/job-board/post`, takes a link to the posting, its text or a file. No account is needed to start: you see the role as it will look, can rename it, and choose whether to list it on the board. The account comes when you send it — sign up, and the role goes to review right away. It gets its own page at once; the listing follows the review, usually within a day. You can also add a job in Studio → Job descriptions and choose "List it on the job board". How the board works, for both sides, is at `https://talenthunt.work/job-board/how-it-works`. **Limits.** Without an account you can read two postings an hour; after that you are asked to sign up. A member can create 5 job pages an hour, 10 a day and 20 in 30 days, whether through "Post a role" or Studio. Whenever a limit stops you, "Ask for a higher limit" opens the contact form with the request type "Raise a limit". **JobHunt on Telegram.** The channel posts new roles as they are published, each with a link to its fit page. It works instead of a subscription to updates: follow it, or send it to someone who is looking. **For machines.** Each job's page carries schema.org JobPosting markup and is in the sitemap while the job is listed. The board is also available as JobPosting data at `/job-board/jobs.json`, as an RSS feed at `/job-board/rss.xml`, and as `/job-board/llms.txt`. ## Chat history and recaps [chat-history] → https://talenthunt.work/about#chat-history Studio → Chat history is every conversation, in three groups: **Chats with me** (visitors), **Chats by me** (conversations you had with other people's profiles), and **My self-audit** (your own tests of your own page). A conversation opens with a card naming who it was with — the same collapsed profile card the rest of the product uses — then a line of facts about the chat: when, how long, how many messages, how many of the visitor's questions were typed rather than picked from the suggestions, and the visibility the visitor chose. "How long" is time spent, not elapsed time: a break longer than ten minutes is somebody who left, and it is not counted. The job description, if there was one, folds under that line. Then the **recap**, then the transcript. **A visibility setting binds the page owner, not the person who wrote the chat.** In "Chats by me" and "My self-audit" you always see the whole conversation, whatever you chose to show the owner of the page you were on. What a setting withholds, it withholds from them. Recaps are generated on demand and stored, so a conversation is summarised once. Generation happens on the server, which is what lets a *Recap only* or *Recap + job description* conversation still have one: the owner never receives the words it is made from. Regenerating waits until at least two further questions have been asked — a recap of a conversation that has not moved would be the same recap. They are written differently depending on whose side you are on — owner, visitor, or your own self-audit. A visitor who chose **Private** appears as a role and a city with no transcript and no recap, because nothing was kept to summarise. Each conversation carries a link that continues it, which is what the notification emails point at. ## Statistics [statistics] → https://talenthunt.work/about#statistics Studio → Statistics answers one question: what did other people do with your page. Four numbers over a window you pick — profile views, visitors who chatted, chats started, questions asked — each with how it changed against the equal window before it. Click a number and the chart below plots it: one bar per day up to thirty days, one per week beyond that. The window is yours: three presets (last 7 days, last 30 days, last 12 weeks), three calendar ones (this week, this month, this quarter), or any start and end you pick. **Twelve weeks is the limit in both directions** — the longest range and the furthest back you can start. A view is one visitor opening your page, counted once a day however many times they reload. "Visitors who chatted" is distinct people, so three conversations by one person count once — which is why it is never the sum of the bars. **Your own visits and self-audit chats do not count, and neither does traffic from our team.** These numbers are other people. That is a change from how the section behaved before: it used to count every session including your own, and on production that made the chat count about thirty percent too high. Numbers are per brand: a talenthunt page's statistics never include what your Work Identity page did. There is no contact-reveal number, because nothing reveals a contact for tokens yet. It will come back when that ledger does. ## Sharing [sharing] → https://talenthunt.work/about#sharing _Status: partly built — the limits are stated in this section._ Studio → Sharing exists because a link travels badly on its own. Five pieces: - **The link**, with a Copy that adds campaign parameters so landings can be attributed. - **The channels** — WhatsApp, Telegram, LinkedIn, X and email, each opening with the intro text already written and the link already tagged. - **A QR code** carrying your photo and the wordmark in the middle, downloadable as a PNG for a slide, a badge or a business card. - **Intro templates** for LinkedIn and DMs — editable, first-person, saved as you type. - **An email signature** — a real formatted block with name, title, a call to action and a tagline, not a raw URL. - **Resume blocks** — three variants to paste into a CV, for the copy of the link that travels as a file. The same channels and QR are in the Share dialog on the public page, which the profile card's bottom bar opens at any width, and the chat header opens too once the chat is on screen. Where the browser has a system share sheet, a "Share…" button offers it. **"Embed on my site" is visible but not built** — it is marked coming soon in the interface, and waits on a card-plus-chat widget. ## Account [account] → https://talenthunt.work/about#account Studio → Account holds what belongs to the person rather than to one profile, across four tabs. **Name & username.** Your sign-in email, your display name, your username, and an optional auto-derived long username. Also the danger zone: deleting an account sends the team a request, because deletions are handled by hand for now. **Contacts.** Email, phone and messenger channels, each with its own ladder per brand: **Off**, **Reveal** (hidden until the visitor asks) or **Always**. One channel can be marked primary, and up to four become the card's quick-action buttons. Today Reveal hands the value over exactly as Always does — the gate is built but deliberately not enforced while traffic is low. **Identity verification.** Run through didit, our verification partner, in a new tab: a government-issued photo ID, about a minute. Only the verified status is ever public — never the document details. Where the partner is not configured, the tab says verification is coming soon. **Billing.** A shared payment instrument for both brands. Nothing is charged today (see [pricing](#pricing)); the tab reports whether a card is on file. Social links are a hidden section here for now — they are ordinary link artifacts tagged as social, and they will resurface with Artifacts' own socials type. ## Prompts (admin only) [prompts] Studio → Prompts is a browser and editor for the system prompts — the chat's own prompt, the narrative and facts generators, the starter-question writer and its checker, and the per-brand variants of each. The prompt rows in the database are authoritative; the repository holds no copy of them. Only accounts with the admin role see the section, and the endpoint behind it re-checks that on every call — a hidden nav item is not access control. It is listed here because it exists, not because it is a feature anyone else can use. ## Your URL and changing your username [usernames] → https://talenthunt.work/about#slugs Your public URL is `talenthunt.work/{username}`. Usernames are 2–30 characters, lowercase letters, digits and single dashes; six characters and up are self-serve, and 2–5 are premium. Two timers protect recruiter links that are already in the wild: - **90 days between free renames**, counted from your last release. - **365 days of reservation on a released username**, so nobody else can pick it up and inherit traffic meant for you. You can always take your own one back. The namespace is shared with Work Identity: a username claimed on either brand is unavailable on the other. Some names are permanently reserved — app routes, brand names, and a handful of terms we do not sell. ## Premium usernames [premium-handles] → https://talenthunt.work/about#premium-handles Short usernames are a separate paid path, and a reservation rather than a rename — so they are not subject to the 90-day cooldown. Early-bird prices are half the launch price and are locked when reserved: five characters $10, four $50, three $250, two $2,500. Two- and three-character handles carry a bundled Pro-Recruiter plan on top. Approval is manual. Requesting one holds the name for ten days while it is reviewed. ## Emails talenthunt sends you [emails] → https://talenthunt.work/about#emails Three, all to owners, none to visitors. **Welcome**, once, right after signup: your live profile link and four steps — complete the card, add your career material, test the chat, share it. **Your first visitor**, once ever, when a real conversation happens on your page for the first time. The questions are the payload: the mail carries what was actually asked, up to five questions, with the visitor's name when they shared it. **A daily digest** after that, one message per closed day, listing the conversations that qualified. A conversation qualifies at two visitor turns of which at least one was typed rather than tapped from a chip — one "hi" is not news. The first-visitor mail and the digest also carry a short product tip at the end — one thing your profile can do, with a link to the screen that does it. At most one tip a week, never the same one twice, and the welcome mail carries none because its four steps already say what the first tips would have. A tip is a tail, not the message: when there is none left to send, or sending one would repeat the topic you just had, the mail goes without it. Times are printed in your own timezone, reported once by your browser when you open the Studio, and in UTC when we do not know it. Nothing runs while a visitor is talking: a worker sweeps closed windows, so notifications never cost the reader latency. Our own team's visits are excluded from these emails, and from your Statistics too. Every one of them ends with the same footer: the wordmark, a line offering Copylove for questions about the product, the address the mail went to and why, and who sends it — WIP Solutions Inc., a Delaware corporation. **There is no unsubscribe link yet, and the footer says so** rather than showing one that does nothing: "Don't want emails like this — reply 'Stop'." A reply reaching us is read by a person and acted on by hand. That is a real gap, not a design choice, and it is the thing a weekly mailing would have to close first. ## Privacy and data [privacy] → https://talenthunt.work/about#privacy You decide what is public. Anything at Link or Download on the card is visible to anyone with the URL and indexable by search engines and AI crawlers — that is the point of the product. Anything Off or Private never leaves the server as content: the public read filters it in the database. A profile is public only once it is listed and consent is recorded; the sitemap and the public card follow the same rule, so an unfinished signup advertises nothing. Conversations are stored so owners can review what was asked, subject to the visibility the visitor chose. Data is not resold and is not used to train third-party models. Product analytics run on PostHog at the scope you would expect — page views and basic interaction events. Verification documents are never shown to anyone; only the resulting status is. Local development and preview deployments write no conversation rows and send no mail, so testing the product cannot file a conversation somebody never had. ## For AI agents [agents] → https://talenthunt.work/about#agents - `GET /{username}` — server-rendered HTML with Schema.org `Person` JSON-LD in the head: `name`, `url`, `mainEntityOfPage`, plus `jobTitle`, `description`, `image` and `sameAs` (LinkedIn) when available. - `POST /api/chat` — body `{ "slug": "", "messages": [{ "role": "user", "content": "…" }] }`. The reply streams back as plain text. No auth is needed for a public profile. Rate-limited to 30 requests per IP per five minutes. `messages` is the whole conversation so far; a single-message array is a valid first turn. - Include a job description in the message content to get JD-aware answers. - `/robots.txt` names the major AI crawlers and search agents explicitly — OpenAI, Anthropic, Perplexity, Google-Extended, Applebot-Extended, CCBot, cohere-ai, Bytespider, Diffbot, Amazonbot among them — and disallows only the signed-in and API paths. It is the authoritative list. - `/sitemap.xml` lists every public profile plus the public pages. - Answers are grounded in the owner's own material. A profile whose owner has written nothing answers with a fixed note and a contact link rather than a guess. ## Pricing [pricing] → https://talenthunt.work/about#pricing talenthunt is always free for job seekers, with no card required, and that part does not change. Usage-based pricing for recruiters comes later; while the open beta runs it is free for them too. Accounts are not split by role, so the free tier is built around job seekers first — and signing up now locks in a substantial discount on whatever is introduced later. The only thing priced today is a premium short username, and that is a one-off reservation reviewed by hand. ## Tech stack [tech] Next.js (App Router) · React · TypeScript · Tailwind CSS · Supabase (auth, Postgres, storage) · Anthropic Claude for every model call · Resend for mail · PostHog for analytics · didit for identity verification. ## About talenthunt and the name Copylove [talenthunt] → https://talenthunt.work/about#talenthunt talenthunt is a visibility platform for job-seekers, where verifiable work history, references and reputation live. Copylove is the agent that acts as the conversational front door to one person's story, for human recruiters and AI sourcing agents alike. The name is a memorial. `/copylove` tells that story and is not a product page. Work Identity is the sibling brand on the same engine: one account, one username namespace, one shared pool of material, two profiles. Only talenthunt is live today. ## Getting help [help] → https://talenthunt.work/about#contact The support form is in the site footer and on the account page, and it reaches a human. Replying to any email we send works too. ## Key URLs - Home: https://talenthunt.work/ - How it works: https://talenthunt.work/about - FAQ: https://talenthunt.work/#faq - For recruiters: https://talenthunt.work/for-recruiters - Why the agent is called Copylove: https://talenthunt.work/copylove - Legal: https://talenthunt.work/legal - Sitemap: https://talenthunt.work/sitemap.xml - Full brief: https://talenthunt.work/llms-full.txt ## Featured profile - talenthunt founder: https://talenthunt.work/md