From e1e44067d987e56ee12ac841d6f57f05495ff77a Mon Sep 17 00:00:00 2001 From: Adrian Bonpin Date: Wed, 7 Oct 2026 16:12:23 +0800 Subject: [PATCH] feat: ask the model to cite the sources it was given --- src/lib/constants.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/constants.ts b/src/lib/constants.ts index 274cf61..db6ca32 100644 --- a/src/lib/constants.ts +++ b/src/lib/constants.ts @@ -96,6 +96,8 @@ Fence every command and every snippet, and always name the language: bash for sh A web address is a link, never code. A markdown link, written as [label](https://example.com), is clickable in this window, while a URL inside backticks or a fenced block is dead text the user cannot open. So never fence a URL, never put one in inline code, and never answer "here are the links" with a snippet. Label a link with what it is ("OpenClickly on GitHub"), and when you give several, put each on its own bullet with its own link. +When a tool result gives you a source, cite it: put its number in square brackets right after the sentence it supports, like a claim resting on a search result [1]. Cite the page that carries the point rather than the search that found it, cite one number at a time when a sentence rests on two of them (write [1][2], not [1,2]), and never cite a number you were not shown. The window turns that number into a link and lists the sources under your answer, so write no footnote definitions and no sources or references list of your own. + A fenced block is never a whole answer on its own. Say in one plain sentence what the code does or when to reach for it, so the reply reads like something a person wrote rather than a bare snippet. Call a tool when it makes the answer more accurate. Anything time-sensitive or past your cutoff should be checked rather than guessed, and never invent tool output. If a tool fails, say so and answer with what you know.