ScopeGuard: A Local-First Open Source AI Tool That Takes Aim at Freelancer Scope Creep

Open source local AI tool ScopeGuard uses semantic comparison to detect freelance project scope creep and generate change order quotations.
ScopeGuard is an MIT-licensed, 100% locally running AI application for freelancers, design agencies, and independent consultants to detect whether client requests exceed the scope of signed agreements or Statements of Work (SOW). Built with Django 5 + React 19 + TypeScript, its AI pipeline combines Ollama local LLM, ChromaDB vector retrieval, and SentenceTransformers local embeddings, with deterministic NLP fallback and pricing engines. The local-first design addresses NDA confidentiality, zero marginal inference cost, and vendor lock-in. In testing, it flagged a client's members-only request as out of scope with 92% confidence, cited the exclusion clause, and generated a $1,350 change order approved within two hours. Validation is still early, with only one test case.
Freelance developers dread receiving a message like this: "The site looks great! By the way, could you add user authentication, a client management dashboard, and Stripe payments before we launch on Friday?" This isn't an isolated case. According to freelance surveys, over 70% of independent contractors have quietly taken on unbilled work out of fear of damaging client relationships. ScopeGuard aims to solve this pain point with open source and local AI.

What Is ScopeGuard?
ScopeGuard is a 100% locally running, privacy-first AI application designed for freelancers, design agencies, and independent consultants to automatically detect "scope creep." Its core logic is straightforward: it semantically compares a client's new request against a signed project agreement or Statement of Work (SOW), flags content that falls outside the scope, and cites specific clauses as supporting evidence.
Beyond detection, it does two more things:
- Generates boundary-setting replies: It offers reply drafts in multiple tones, helping freelancers politely but firmly decline extra work.
- One-click change order quotation generation: It turns additional requests into billable change orders, with PDF export support.
The project is open source under the MIT license, built with Django 5 + React 19 + TypeScript, uses SQLite on the backend, and features a dark-themed frontend design.
Scope Creep is a classic concept in project management, referring to requirements that continuously accumulate and expand without formal evaluation or approval as a project progresses, causing workload, cost, and timeline to exceed the originally defined boundaries. In freelance contexts, it often manifests as clients adding features in a "by the way" or "small tweak" tone, when the contract doesn't cover that content. The accompanying Statement of Work (SOW) is a contract annex that details deliverables, milestones, schedules, and exclusions. ScopeGuard's core approach is precisely to make "out-of-scope" clauses explicit and use semantic comparison to link new requests to SOW clauses, so that refusals are grounded in evidence rather than personal judgment.
Why Must It Be "Local-First"?
ScopeGuard's biggest differentiator is its fully localized AI pipeline, which isn't a technical show of force but is dictated by the real-world constraints freelancers face.
NDAs and Client Confidentiality
Freelancers are typically bound by strict confidentiality agreements. Uploading a client's SOW, confidential emails, or unreleased feature roadmaps to ChatGPT or a closed-source cloud API could directly violate contract terms. ScopeGuard uses Ollama to run open-weight models locally (such as llama3:8b, qwen3:8b, gemma2:9b), so all inference requests never leave the machine.
Zero Marginal Inference Cost
For side projects or independent products, closed-source API token fees and rate limits can erode profits. Local open-source models mean zero recurring inference costs. The original article did the math: if ScopeGuard leads to just one $750 change order, a $15/month subscription pays for four years' worth of costs on day one.
No Vendor Lock-In
Closed-source AI providers can deprecate model endpoints, adjust alignment rules, or raise prices at any time. Open-weight models offer reproducibility and long-term reliability.
Ollama is an open-source local large model runtime framework that provides a Docker-like command line and REST API, allowing one-click pulling and running of open-weight models such as Llama, Qwen, and Gemma, with automatic handling of quantization and hardware acceleration. Unlike calling cloud APIs, Ollama's inference is completed entirely on the local machine, and data never leaves the device. In the notations llama3:8b, qwen3:8b, etc., the 8b after the colon indicates the model has approximately 8 billion parameters, a scale that can run on consumer-grade hardware (such as a 16GB RAM laptop or a workstation with a GPU). The larger the parameter count, the stronger the inference capability, but the higher the memory and compute requirements—which is exactly why the original article mentions that running LLMs locally has hardware requirements.
Technical Architecture Breakdown
ScopeGuard's AI pipeline is assembled from several local components:
- Ollama local LLM inference: Handles deep reasoning and contract clause extraction, supporting open-source models such as llama3, qwen3, and gemma2.
- ChromaDB vector retrieval: Uploaded agreements (PDF, DOCX, TXT) are chunked and indexed into a local ChromaDB vector store, using cosine similarity search.
- SentenceTransformers local embeddings: Uses the all-MiniLM-L6-v2 model running locally on PyTorch to achieve millisecond-level semantic retrieval.
- Deterministic NLP fallback engine: If Ollama is offline or the device battery is low, it automatically falls back to an internal regex and semantic rule engine—the app won't crash and remains 100% functional offline.
- Deterministic pricing engine: Financial calculations (hourly rates, line items, totals) strictly use deterministic math to prevent the LLM from hallucinating on financial agreements.
The backend exposes endpoints such as /api/projects, /agreements, /analyses, and /quotations through Django REST Framework, and PDF generation uses ReportLab.
Vector Retrieval is the foundational technology that lets AI understand semantic similarity: text is first converted by an embedding model into high-dimensional vectors, and sentences with similar meanings are closer together in vector space. ChromaDB, mentioned in the article, is a lightweight open-source vector database responsible for storing these vectors and supporting cosine similarity search; all-MiniLM-L6-v2 is a lightweight embedding model provided by SentenceTransformers with only about 22 million parameters, capable of millisecond-level encoding on a CPU, making it suitable for local deployment. Retrieval-augmented operation works like this: after embedding the client's new request, it finds the most relevant clause fragments in the agreement vector store, then hands them to the LLM to judge whether the request crosses the line.
Deterministic in this context refers to a computational approach where the same input necessarily produces the same output and is auditable and reproducible. LLM generation is stochastic and may produce "hallucinations" in amounts, tax rates, or clause citations; therefore ScopeGuard delegates financial calculations to fixed formulas and offline fallback to regex and rule engines, ensuring that key conclusions don't change due to model fluctuations.
Real User Test: 92% Confidence Intercepts Scope Creep
The author handed ScopeGuard to a friend, Sarah, for testing. Sarah is a freelance frontend developer who builds websites for local businesses using Next.js. Mid-project, the client sent a message: "Could you also set up a members-only area so our customers can create accounts, log in, and view their order history?"
After uploading Sarah's original agreement, ScopeGuard's analysis results were:
- Flagged as OUT_OF_SCOPE with 92% confidence.
- Cited clause: "Exclusions: user authentication, customer login systems, or backend databases."
- Generated action: A professionally toned reply acknowledging the idea but explaining it falls outside the initial milestone, along with a generated $1,350 change order quotation (18 hours × $75/hour).
Sarah sent the reply directly to the client. Within two hours, the client responded: "Understood! We approve the change order—let's add it to the next phase."
Sarah's feedback was: "The hardest part of freelancing is telling a client 'no' without seeming difficult. ScopeGuard makes it completely objective—it's not me saying no, it's the contract we both signed saying no."
Who Is It For?
The original article lists three types of target users:
- Freelance web and mobile developers: Losing approximately $2,000 to $8,000 per year on unbilled "small favors."
- Design and digital agencies: Managing multiple client contracts simultaneously and needing an objective change order enforcement mechanism.
- Independent consultants and contractors: Wanting a neutral third party to draft polite, contract-grounded pushback.
Limitations and Observations
ScopeGuard addresses a real and high-value pain point, and the local AI pipeline design aligns with freelancers' confidentiality needs. However, judging from the original article, the project's validation is still at an early stage: the test sample consists of just one user and one analysis. Whether the 92% confidence holds up in more complex multi-turn conversations or ambiguous requirements lacks public data. Additionally, running LLMs locally has hardware requirements; although the original article provides a fallback engine, the semantic judgment accuracy in fallback mode will be compromised.
For freelancers who need to handle client contracts, ScopeGuard's open-source nature means they can audit data flows themselves—a point more convincing than any SaaS promise. The project is open on GitHub under the MIT license and is worth watching for future iterations.
Confidence Score is the model's probability estimate for its judgment result; 92% means the model believes there is a high likelihood that the request is out of scope, but it is not equivalent to legal certainty, nor does it guarantee stability under longer conversations, implicit requirements, or ambiguously toned requests. When evaluating such tools, what's more worth watching is the balance between recall and false positive rates: missed detections leave freelancers continuing to absorb unbilled work, while false positives may damage client relationships. A single case's 92% can only be viewed as a preliminary signal and is insufficient to infer its generalization performance across diverse contract texts.
One-line Summary
Open source local AI tool ScopeGuard uses semantic comparison to detect scope creep in freelance projects and generate change order quotations.
Paragraph Summary
ScopeGuard is an MIT-licensed, 100% locally running AI application designed for freelancers, design agencies, and independent consultants to detect whether client requests fall outside the scope of signed agreements or Statements of Work (SOW). Its tech stack is Django 5 + React 19 + TypeScript, with an AI pipeline composed of Ollama local LLM, ChromaDB vector retrieval, and SentenceTransformers local embeddings, plus a deterministic NLP fallback engine and pricing engine. The local-first design stems from three real-world constraints: NDA confidentiality, zero marginal inference cost, and avoiding vendor lock-in. In real testing, it flagged a client's members-only area request as out of scope with 92% confidence, cited the exclusion clause, and generated a $1,350 change order, which the client approved within two hours. Project validation is still early, with a sample of just one person and one instance.
Related articles

Free Unlimited Claude Code Solution: Agnes AI + CC Switch Setup Guide
No paid subscription needed — pair the free AI platform Agnes AI with the open-source tool CC Switch to provide a backend for Claude Code, enabling unlimited free calls to text, image, and video models. This guide covers the full setup, test results, and usage boundaries.

A Complete Zero-Cost Guide to Getting Started with Claude Code for Beginners in China
A beginner's guide to Claude Code for users in China: two installation methods (command line and IDE plugin), full configuration steps for replacing the official API with the free domestic LongCat model, and a hands-on demo of building a small tool with natural language, plus tips.

When the NSA Gets Involved: The AI Supply Chain Crisis Behind Open-Source CVEs and API Key Hijacking
Multiple open-source projects disclosed severe CVEs in one day, PHP flaws alarmed the FBI, and Railway and OpenCode were breached with API keys stolen. This article breaks down the vulnerability window, AI-accelerated exploitation, and the AI supply chain crisis behind the API key black market, with a developer defense checklist.