Source identity
| Field | Recorded value |
|---|---|
| Source type | GitHub source |
| Original record | Janady13/thatstupidcomputer / packages/discovery/providers/google/answers.ts |
| Date | Not specified in source |
| Repository | Janady13/thatstupidcomputer |
| Revision | 57555cde46910102dd25d6c1c1fb2c359e9655bd |
| Branch | main |
| Path or archive member | packages/discovery/providers/google/answers.ts |
| Original SHA-256 | fb3b611b70b27f709b3a0359986cebde0a4c31bb8408d8be4b1c7a6ce508020e |
| Git blob SHA | c576f99dff8ed2c6260770c2539c3e5c8954a32c |
| Reading-copy SHA-256 | fb3b611b70b27f709b3a0359986cebde0a4c31bb8408d8be4b1c7a6ce508020e |
Recovered source transcript
Download complete source text ↓13 lines · 0.8 KB
import {annotated,record,records,type AnswerAdapter} from '../../protocol.ts';
export const googleAnswers:AnswerAdapter={
endpoint:'https://generativelanguage.googleapis.com/v1beta/interactions',auth:'google',headers:{'Api-Revision':'2026-05-20'},
build:(model,query)=>({model,input:query,tools:[{type:'google_search'}],generation_config:{max_output_tokens:1200},store:false}),
parse:value=>{
if(!record(value)||value.status!=='completed'||!Array.isArray(value.steps))return;
const steps=records(value.steps);
const answer=annotated(steps.filter(s=>s.type==='model_output').flatMap(s=>records(s.content)),'text','url_citation');
if(!answer.text.trim())return;
return {...answer,searchExecuted:steps.some(s=>s.type==='google_search_result'),...(typeof value.model==='string'?{responseModel:value.model}:{})};
},
};