From be7d7a1bce935153ec7534e73b082ef4adbd82b3 Mon Sep 17 00:00:00 2001 From: Peisong Xiao Date: Sat, 17 Jan 2026 01:22:11 -0500 Subject: [PATCH] New release: added README.md and example prompts to default configuration --- README.md | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++ background.js | 14 ++++++++---- manifest.json | 2 +- 3 files changed, 71 insertions(+), 5 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..6d89b99 --- /dev/null +++ b/README.md @@ -0,0 +1,60 @@ +# WWCompanion + +WWCompanion is a manual, user-triggered browser extension for +LLM-enabled AI companionship with WaterlooWorks job postings. + +## Table of Contents + +- [Usage](#usage) +- [Configuration](#configuration) +- [Example prompts](#example-prompts) + - [Example system prompt (default if not configured)](#example-system-prompt-default-if-not-configured) + - [Example task prompt: Generic Fit](#example-task-prompt-generic-fit) + - [Example task prompt: Ratings Only](#example-task-prompt-ratings-only) + +## Usage + +- Configure API settings, prompts, and tasks in **Settings**. +- Open a WaterlooWorks job posting modal. +- Click **Extract** or **Extract & Run** in the popup. +- Review the streamed response, then copy or clear it as needed. + +## Configuration + +- Open **Settings** from the popup. +- Add your API key, base URL, and model (defaults target + OpenAI-compatible APIs). +- Set your system prompt and resume text. +- Customize task presets; the top task is used as the default. + +## Example prompts + +### Example system prompt (default if not configured) + +Concise, critical evaluation style with a short summary and emphasized +key points. + +``` +You are a precise, honest assistant. Be concise and avoid inventing details, be critical about evaluations. You should put in a small summary of all the sections at the end. You should answer in no longer than 3 sections including the summary. And remember to bold or italicize key points. +``` + +### Example task prompt: Generic Fit + +Single-section fit assessment tuned for compact output without +interview prep. + +``` +You should evaluate for my fit to the job. No comparisons between postings and you don't need to suggest interview prep, we'll leave those for later. a bit of tuning to your answers: please keep things more compact, a single section for the evaluation is enough, you don't need to analyze every bullet point in the posting. +``` + +### Example task prompt: Ratings Only + +Structured numeric ratings with headings and no extra commentary. + +``` +Give ratings out of 10 with headings and do not include any other text. + +1. Fit evaluation: my fit to the role. +2. Company status: how well this company offers career development for me. +3. Pay: use $25 CAD per hour as a baseline; rate the compensation. +``` diff --git a/background.js b/background.js index 960635e..6f734ae 100644 --- a/background.js +++ b/background.js @@ -1,9 +1,15 @@ const DEFAULT_TASKS = [ { - id: "task-fit-summary", - name: "Fit Summary", + id: "task-generic-fit", + name: "Generic Fit", text: - "Summarize the role, highlight key requirements, and assess my fit using the resume. Note any gaps and what to emphasize." + "You should evaluate for my fit to the job. No comparisons between postings and you don't need to suggest interview prep, we'll leave those for later. a bit of tuning to your answers: please keep things more compact, a single section for the evaluation is enough, you don't need to analyze every bullet point in the posting." + }, + { + id: "task-ratings-only", + name: "Ratings Only", + text: + "Give ratings out of 10 with headings and do not include any other text.\n\n1. Fit evaluation: my fit to the role.\n2. Company status: how well this company offers career development for me.\n3. Pay: use $25 CAD per hour as a baseline; rate the compensation." } ]; @@ -14,7 +20,7 @@ const DEFAULT_SETTINGS = { apiKeyPrefix: "Bearer ", model: "gpt-4o-mini", systemPrompt: - "You are a precise, honest assistant. Be concise, highlight uncertainties, and avoid inventing details.", + "You are a precise, honest assistant. Be concise and avoid inventing details, be critical about evaluations. You should put in a small summary of all the sections at the end. You should answer in no longer than 3 sections including the summary. And remember to bold or italicize key points.", resume: "", tasks: DEFAULT_TASKS, theme: "system" diff --git a/manifest.json b/manifest.json index 5466dfd..eb63dc3 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 3, "name": "WWCompanion", - "version": "0.2.1", + "version": "0.2.2", "description": "AI companion for WaterlooWorks job postings.", "permissions": ["storage", "activeTab"], "host_permissions": ["https://waterlooworks.uwaterloo.ca/*"],