Changelog
Public record of changes to koher.app. What changed and why.
31 March 2026
New position statement: Knowing Why
New page
Added Knowing Why — a position on the difference between better output and visible judgement. The industry is racing to make AI output better through multi-model orchestration (GitHub ensembles since 2024, Perplexity Model Council, Microsoft Critique and Council). Koher asks a different question: can you see the judgement that produced the output? Includes three diagrams (SVG + WebP) comparing orchestration and architectural separation. Listed on positions page and index (replacing Parameterisation Gap in the top 3).
30 March 2026
Navigation streamlined, secondary links moved to footer
Site-wide
Removed Voice, Reading, and Venue from the top navigation across all 16 pages. The nav now shows only four items: Tools, Positions, Notes, About. Voice, Reading, and Venue are now in the footer alongside Values and Changelog. This reduces cognitive load in the nav bar while keeping all pages accessible.
Vision page added
New page
Added vision.html — a long-form statement of what space Koher occupies, what it represents, and what it builds toward. Content converted from vision.md. Covers the position between AI enthusiasm and refusal, the architecture as proof, encodable judgement, the "do more with less" philosophy, the full range of domains, the ten-year timeframe, and what success looks like. Not a top-level nav item; linked from the footer.
29 March 2026
Fragment Mapper added to tools page and released on GitHub
Tool release
Fragment Mapper is now listed on the tools page and published as an open-source repository at koherarchitecture/fragment-mapper. This is the third Koher tool to be released.
The release includes frontend fixes from first-encounter usability testing by Dhyeya Pandya: the narrative now appears before the map (reading the narrative first makes the map comprehensible — the reverse does not work), the legend sits above the canvas rather than below it, the fragment list with inline tags is promoted as a primary display, the map animation is settle-then-still with hover highlighting, pipeline labels use plain language, and line types are more visually distinct.
28 March 2026
Added funding.json manifest
Infrastructure
Machine-readable funding declaration following the fundingjson.org spec. Hosted at /funding.json. Lists all three Koher tools, funding channels, and financial history. Also added to the Coherence Diagnostic and Play Shape Diagnostic GitHub repositories.
22 March 2026
Simplified Voice section on index page
Design
Removed the h2 heading, description paragraph, and multi-statement preview from the Voice section. Replaced with a single random statement that changes on each page load, drawn from the full set of 29. The previous version stacked too many text elements — heading, count, description, three preview statements — creating visual clutter.
21 March 2026
New position: The Envelope of the Prompt
Position statement
Published new position statement on why prompts have a ceiling and why the interesting work begins beyond it. Argues that a prompt is a request, not a mechanism — and that the Koher architecture is a direct response to this categorical distinction. Covers the four moves beyond the prompt: architectural, infrastructure, process, and memory.
Added to /positions as newest entry. Replaces ChatGPT Problem card on index.html (max 3 positions on landing page).
Inline SVG diagrams added to position statements
Content
Added 3 inline SVG diagrams to The Envelope of the Prompt: request vs mechanism comparison, four moves beyond the envelope, and the three-layer architecture with "no prompt" emphasis on the Rules layer.
Added 4 inline SVG diagrams to Being Around: the exit ramp cycle, scaling vs staying trajectories, accrual of significance over time, and the body of work grid. Brings Being Around in line with the visual density of newer position statements.
19 March 2026
Voice page
New page
Added /voice — 25 full-screen bold statements positioning Koher. No nav, no footer, scroll-snap between screens. Fraunces 900 on dark ground. Statements drawn from actual architecture, economics, and practice.
Voice added to site navigation
Navigation
Added Voice link to nav across all 12 pages, placed between Notes and About.
Voice highlight box on index
Landing page
Added Voice section to index.html between Venue and About — preview panel showing three sample statements in voice page typography, linking to /voice.
16 March 2026
Balance top-up and index update
Infrastructure
Added ₹1,000 personal contribution to restore Coherence Diagnostic funding after balance hit zero. Updated static balance display on index page to reflect current state.
Hosted demos pause when balance reaches zero. This top-up restores service for approximately 2 weeks of student usage.
Updated
index.html
Updated static balance display from ₹4,200 to ₹1,000 and runway from ~7 weeks to ~2 weeks.
Updated
balance.json
Updated balance to ₹1,000, runway to 2 weeks, status to "low".
12 March 2026
New Position: The Hallucination Proof
Position statement
Published a new position statement analysing the OpenAI/Georgia Tech paper "Why Language Models Hallucinate" (Kalai et al., 2025) and its implications for AI tool design. The paper proves mathematically that hallucination is inevitable — not a bug, but a property of density estimation. This position explains what this means for Koher's architecture.
The claim that "AI hallucination is inevitable" often gets used either sensationally or dismissively. This position statement makes the proof accessible, explains why it matters (and what it doesn't mean), and articulates why Koher's three-layer architecture — qualification, rules, language — is specifically designed to address this inevitability. If hallucination cannot be eliminated, the architectural question becomes: where does it matter?
Added
position-hallucination-proof.html
New position statement with three custom SVG graphics: the mathematical inevitability equation, the benchmark problem (9/10 benchmarks penalise honesty), and the architectural response (typical approach vs Koher's separation of concerns).
Added
img/hallucination-inevitable.svg
SVG visualising the core mathematical proof: generative error rate ≥ 2 × classification error rate.
Added
img/benchmark-problem.svg
Table SVG showing that 9/10 major benchmarks use binary scoring with no credit for "I don't know" — incentivising confident guessing over honest uncertainty.
Added
img/koher-response.svg
Architecture comparison SVG: typical "AI judges" approach vs Koher's three-layer separation where hallucination in narration is harmless because judgement lives in deterministic code.
Changed
positions.html
Added "The Hallucination Proof" as the newest position at the top of the grid.
Changed
index.html
Updated positions section to show the three newest positions, replacing "Being Around" with "The Hallucination Proof".
11 March 2026
"What Koher Seeks" — Making the Ask Explicit
New content
Added explicit "What Koher Seeks" sections to index.html and about.html, clarifying what Koher asks from users: interesting use-cases and stories, plus engaged ongoing support (not just one-off donations).
People tell me they can't understand what Koher wants. Everything is free, open source, no login required — so what's the exchange? The answer: stories of interesting use sustain the practice. And if you want to support financially, recurring small amounts matter more than one-off donations, because infrastructure costs month after month.
Changed
index.html
New "What Koher Seeks" section after hero, before tools. Explains: stories of use are the return; engaged ongoing support preferred over one-off donations; contact hello@koher.app to share stories.
Changed
about.html
New "What Koher seeks" section at the end of the page, before footer. Same messaging with an info-card highlighting the preference for ongoing support.
10 March 2026
New Page: Reading List
New content
Curated reading list of 25 freely accessible papers, essays, tutorials, and projects across six categories that inform the Koher architecture. Each category has a distinctive inline SVG illustration and readings are presented as scannable cards with type badges, author attribution, and source labels.
Koher's architecture draws from specific research traditions — interpretable ML, transformer mechanics, neuro-symbolic systems, design pedagogy, human-AI collaboration, and AI ethics in education. Making these sources visible and navigable builds intellectual credibility and serves students exploring the same questions.
Added
reading-list.html
Full reading list page with six category sections, each with an abstract SVG illustration. 25 reading cards with external links, type badges, and source labels. Alphabetical index at bottom with jump links. Light background page consistent with positions.html and about.html. Navigation includes "Reading" link.
9 March 2026
New Position: The Parameterisation Gap
New content
Fourth position statement published. Argues that AI will always need an adapter between what it computes and what humans live — not because AI is limited, but because human experience exceeds what can be parameterised. The form of the adapter (currently dimensions and thresholds) will change. The need for it will not.
Emerged from a self-correction caught in voice notes: the initial "training wheels" framing (Koher is temporary) gave way to the deeper position (the gap is permanent). The piece includes four inline diagrams illustrating the self-correction, the stream metaphor, dual-language qualification, and the horizon.
Added
position-parameterisation-gap.html
Full position statement with four inline SVG diagrams. Hero image at post-parameterisation-gap.svg/.webp.
Updated
positions.html — New card
Added Parameterisation Gap card at top (newest first). Includes SVG thumbnail with parameterisable/gap/lived visual.
Updated
index.html — Positions section
Added Parameterisation Gap card at top of positions list on landing page.
8 March 2026
The First Cyborg — AI Co-authorship Declaration
Philosophy update
Koher was co-created with Claude Code. This has been true since the beginning. Today we made it explicit everywhere. The architecture isn't theory — it's autobiography. I said what and why. Claude Code offered how.
Hiding the collaboration felt dishonest. Let those who want to ridicule, ridicule. This is, as far as we know, the first public case of explicit AI co-authorship.
Updated
index.html — Hero byline
Before
Built by Prayas Abhinav
After
Co-created by Prayas Abhinav + Claude Code
Updated
index.html — About section
"A teacher making tools" → "The first cyborg." Full rewrite explaining the division of labour: human handles judgement, AI handles synthesis. The architecture is autobiography.
Updated
index.html — Footer attribution
"Designed and built by Prayas Abhinav" → "Co-created by Prayas Abhinav + Claude Code"
Updated
index.html — Meta description and structured data
Meta description now references co-creation. Structured data author field updated to include both Prayas Abhinav (Person) and Claude Code (SoftwareApplication).
Updated
about.html — "Who makes this" section
Complete rewrite. Now opens with "Koher was co-created with Claude Code" and explains the cyborg framing: "I'm not an engineer. I couldn't have built this without AI. But Claude Code couldn't have built it without me either."
Updated
about.html — Footer and meta
Footer attribution and meta description updated to reflect co-creation.
Outreach Communication Alignment
Copy refinement
Updated index.html to align with outreach communication guidelines. Four principles addressed: child of AI (not critic), extension (not correction), ambition is the pattern, and start from their pursuit.
Koher is built with AI, by someone who uses AI constantly. The question is where judgement needs to be inspectable, not whether AI can be trusted.
Updated
index.html — "What This Means" heading
Before
"Language and judgement are different tasks. Separating them makes judgement inspectable."
After
"You want AI feedback you can actually learn from — not just receive."
Opens with the reader's pursuit, not the architecture.
Added
index.html — Approach section
"The architecture is the contribution. The tools are demonstrations. Every AI tool that makes judgements could work this way."
Frames the pattern as the ambition, not the specific tools.
Updated
index.html — Removed anti-AI language
"Most AI tools conflate them" → removed. "answers you can't trust" → "When AI gives you a verdict, can you see why?"
Cyborg Framing Sharpened
Copy refinement
Clarified the cyborg framing: Koher is the cyborg — the human-AI co-creation — not Prayas. The previous framing ("The first cyborg.") was ambiguous about who or what was the cyborg.
The distinction matters. Prayas is human. Koher is the cyborg — neither human nor AI, but both. The tools themselves are the hybrid creation.
Changed
index.html — About section heading
Before
"The first cyborg."
After
"A cyborg project."
Changed
index.html — About opening line
Before
"Koher was co-created with Claude Code."
After
"Koher is neither human nor AI — it's both."
Added
index.html + about.html — Explicit cyborg statement
Added "Koher is the cyborg." to the architecture-as-autobiography paragraph.
Changed
about.html — Section heading
Before
"Who makes this"
After
"A cyborg project"
GitHub Organisation Migration
Infrastructure
Migrated GitHub repos from koher-architecture to koherarchitecture (no hyphen). Updated all source links across the website.
Updated
index.html — GitHub source links
Coherence Diagnostic and Play Shape Diagnostic links now point to koherarchitecture organisation.
Updated
tools.html — GitHub source links
Both tool cards updated to new org URL.
Updated
changelog.html — Historical references
Updated org name in 6 March 2026 entries to reflect current state.
1 March 2026
Cadence Change: Monthly → Quarterly
Philosophy update
Changed tool release cadence from "one tool per month" to "one tool every three months" across all pages. This reflects the reality that tools require assumption grounding through 4–8 weekly conversations with students before development begins.
Updated
index.html — About section cadence
"One tool per month" → "One tool every three months"
Updated
about.html — Practice description
"Koher is a ten-year practice. One tool per month." → "One tool every three months."
Updated
tools.html — Meta descriptions and subtitle
"Released monthly" → "Released quarterly" in meta tags. Page subtitle updated to "One tool every three months."
Updated
position-being-around.html — Two instances
"One tool per month" → "One tool every three months." Also updated "If a month passes" → "If a quarter passes."
The "Being Around" position explicitly grounds the practice in cadence. The quarterly rhythm allows proper assumption grounding — one conversation per week, alternating new students and mentored students. Building on ungrounded assumptions wastes more time than grounding them first.
26 February 2026
Notes Section Launch
New feature
Launched the Notes section — a blog for short-form writing, updates, and announcements. API-driven with WebP hero images.
Added
notes.html — Short-form writing and updates
A blog section with hero images, individual post headers, and client-side routing. First post: "Notes is now live".
Koher needed a space for timely updates that don't fit the static position pages or tool documentation. Notes fills this gap.
Updated
Navigation includes Notes across all pages
Added Notes link to nav on: index, about, tools, positions, position-architecture, position-being-around, position-chatgpt-problem, changelog.
Removed
"The Question" section from homepage
Removed redundant section ("You know when your work holds together..."). This content is already captured in the About section. Cleaner flow: Tools → What This Means.
New About Page
New page
Created a dedicated About page focused on students and self-learners. Updated navigation across all pages to link to the new about.html instead of an in-page anchor.
Added
about.html — For students. For self-learners.
A dedicated page explaining who Koher is for and why the tools are free for students. Grounded in the experience of learning without a guide.
The previous About section was embedded in index.html. A dedicated page creates space for the self-learner focus — acknowledging that the tools are built by someone who was self-taught for 15 years before becoming a teacher.
Updated
Navigation standardised across all pages
All pages now link to about.html in nav. Position pages previously had inconsistent nav (Application Areas, Consultancy) — now standardised to: Tools, Positions, Venue, About.
24 February 2026
Architecture Specification Updates
Philosophy refinement
Updated the Architecture Specification to reflect lessons from recent tool development — qualification can be human-driven, not just AI-driven, and category systems vary by domain.
Expanded
Qualification layer: Human, AI, or Hybrid
Before
Qualification: "AI reads language patterns, transforms unstructured input into structured signals"
After
Qualification: "Humans or AI extract what is present"
The Coherence Diagnostic uses AI classification (DeBERTa) for qualification. Other tools may use human selection — users choose options from a grid. Both are valid qualification approaches. The architecture now explicitly accommodates both, plus hybrid approaches that combine human and AI qualification.
Added
Human Selection approach in qualification table
Added a "Human Selection" row to the qualification approaches table: "When to use: Users have domain knowledge to identify signals directly. Example: User selects play qualities that describe their game's emotional shape."
The original table listed AI-centric approaches (pattern matching, semantic classification, NER). Human selection is equally valid — sometimes the user is the best signal extractor.
Renamed
"The Three-State Innovation" → "Domain-Meaningful Categories"
Before
Single example: Solid / Worth Examining / Attention Needed (confidence-based)
After
Multiple examples: Confidence-based (Solid/Worth Examining/Attention Needed), Relationship-based (Synergy/Neutral/Tension), plus Severity-based and Completeness-based examples
The Coherence Diagnostic uses confidence-based categories. Other tools may use relationship-based categories (Synergy/Neutral/Tension for how elements interact). Both are valid. The architecture now shows category systems as domain-specific, not prescriptive.
These changes align the architecture specification with what recent tool development has demonstrated: human selection can replace AI classification, and relationship-based categories work alongside confidence-based ones. The spec now reflects this flexibility.
22 February 2026
Enhanced data privacy clarification
Transparency
Expanded data use disclosure to explicitly state: no human reads submissions, data is never sold or shared. The previous wording mentioned "no commercial use" but didn't address human access or sharing explicitly.
Students and practitioners should know exactly what happens to their submissions. "No commercial use" could still imply humans review data for quality. The clarification makes it unambiguous: logged data is used only for model training, never seen by humans, never sold, never shared.
Added ChatGPT Problem position to index and positions page
Content
The position statement "When Students Trust ChatGPT More Than Teachers" was created but not linked. Now added to both index.html and positions.html. Index shows latest 3 positions only — older positions remain on positions.html.
Philosophical Reframe
Major restructure
Koher shifts from a consultancy seeking institutional clients to a teacher making free tools for students. The entire commercial framing is removed. A transparent, community-funded model replaces it.
Reframed
From consultancy to practice
Before
A consultancy seeking institutional clients, listing aspirational domains, displaying credentials
After
A teacher making free tools for students and practitioners, transparently funded by community pay-it-forward
The consultancy framing created exit ramps: "If institutions don't buy, if revenue doesn't arrive, if recognition doesn't come — leave." The new framing has no exit conditions. The practice continues regardless of funding. Open source is the core; hosted demos are community-funded convenience.
Rewritten
Hero tagline and CTAs
Before
"Working tools built on a simple separation..."
CTAs: See the tools / How it works / hello@koher.app
After
"Small tools that help you see your own work clearly. Free for students. Open source."
CTAs: Try the tools / Support the practice / Built by Prayas Abhinav
Removed
Commercial and credential sections
- Where This Applies — domain grid (Legal, Education, Finance, etc.) listing aspirational claims without demonstration
- Ways to Work Together — consultancy tiers from ₹5,000 to ₹1,50,000/month
- Boundaries — "What the Koher consultancy doesn't do"
- Track Record — credentials display ("15+ years...", "50M+ annual viewers...")
Domain claims without tools are empty promises. Consultancy pricing creates revenue expectations. Credentials are resume-padding. A teacher making tools needs none of these.
Added
About section
Personal voice replacing institutional framing: "I teach design at Anant National University. For fifteen years I've watched students struggle to see whether their concepts hold together..." The section establishes Koher as one teacher's practice, not a company.
Added
Support section with transparent balance sheet
A public balance sheet showing: monthly costs (API ₹1,800 + Hosting ₹600), current balance, runway in weeks. The "Pay it forward" model — working practitioners extend access for students who can't pay. When balance hits zero, hosted demos pause; open source continues.
Hidden costs create exit ramps. Transparent costs create shared ownership. The balance sheet updates automatically with API usage. Anyone can see how their contribution extends access.
Deleted
Consultancy files
- consultancy.html — redirect page
- consultancy-og2.png — OG image
- consultancy-og2.svg — source file
- linkedin-service-text.txt — consultancy copy
Changed
Site navigation
Before
Tools · Positions · Venue · Application Areas · Consultancy
After
Tools · Positions · Venue · About · Support
Navigation updated across all pages: homepage, tools, positions, position articles, and changelog.
The test for every element: does this create an exit ramp? Consultancy pricing, domain claims, credentials, institutional deployment — all created conditions for leaving. The reframe removes them. The practice continues regardless of funding, recognition, or adoption. Open source is the core. Hosted demos are convenience.
Concept Logging for Model Improvement
Data transparency
Submitted concepts are now logged solely to improve model accuracy. No human reads your submissions — data is never sold, shared, or used commercially. With no commercial model, the training data becomes the value — better data means better tools for students.
Added
Concept submission logging
The hosted demo now logs: submitted concept text, evaluation scores, and timestamp. Data stored in SQLite alongside cost tracking. Used solely for model improvement.
The DeBERTa model was trained on synthetic data. Real student submissions reveal patterns synthetic data missed — edge cases, phrasing variations, domain-specific concepts. Logging enables periodic retraining with real-world examples.
Added
Data use disclosure on website
The Support section now includes a data transparency note: "Concepts submitted to hosted demos are logged solely to improve model accuracy. No human reads your submissions. Data is never sold, shared, or used commercially — training data only. Self-hosted versions log nothing."
Transparency about data use is part of the practice. Users should know their submissions contribute to model improvement, that no human ever sees what they submit, that data is never sold or shared, and that self-hosting avoids logging entirely.
Live Balance Sheet
Support section enhancement
The Support section's balance sheet now fetches live data from the tools-demo API rather than displaying static values.
Added
Live balance fetch from coherence-demo.koher.app
On page load, the Support section now calls the /balance endpoint at https://coherence-demo.koher.app to retrieve current balance and runway values. The balance display updates with live data; colour changes based on status (green for healthy, amber for low, red for critical/paused).
The balance sheet exists for transparency — showing how contributions sustain the hosted demos. Static values would become stale. Live data from the actual cost tracking system ensures the displayed balance reflects reality.
Added
Graceful fallback
If the API is unreachable or returns an error, the static values remain visible. No error messages shown to visitors — the balance sheet simply displays the default values.
The API lives on separate infrastructure (coherence-demo.koher.app). If that service is down, the main website should still render completely. Silent fallback prevents cascading failures.
Payment Button Disabled
Temporary change
The Buy Me a Coffee payment button has been temporarily disabled while evaluating Razorpay as an alternative payment processor.
Disabled
Buy Me a Coffee button
The "Pay it forward" button in the Support section is commented out. The balance sheet and transparency messaging remain visible.
Razorpay offers better integration for Indian users (UPI, Indian cards) and lower transaction fees. Decision pending on which payment processor to use.
21 February 2026
Third Position Statement
Content addition
A new position statement published: "The ChatGPT Problem" — articulating why AI feedback feels hollow and how the Koher architecture addresses this by separating language ability from judgement.
Published
The ChatGPT Problem (/position-chatgpt-problem)
A position statement on the fundamental error people make with AI tools: conflating language ability with judgement ability. The piece explains why ChatGPT feedback varies every time, why there are no consistent criteria, and how the three-layer architecture (qualification → rules → language) addresses this by using AI for what it does well while encoding judgement in deterministic code.
The Architecture Specification explains what the three-layer pattern is. "Being Around" explains the temporal commitment. This piece explains the problem — the core issue that makes separation necessary. It draws from real user feedback (Akash meeting, 20 February) describing the moment of recognition: "this is a very good separation of code and the language" and "holding the model accountable."
20 February 2026
Database Path Alignment
Infrastructure fix
Aligned the SQLite database path with the Docker volume mount point. The Dockerfile created /app/data for persistence, but the code defaulted to /app/analytics/.
Fixed
Database path resolution
Before
Default: ./analytics/koher-analytics.db (inside container: /app/analytics/)
After
Production: /app/data/koher-analytics.db | Development: ./analytics/
The Dockerfile created /app/data as the intended volume mount point, but the database code ignored it. Analytics data would be lost on container restart unless operators manually set DB_PATH. Now production deployments automatically use the prepared directory.
Added
NODE_ENV=production in Dockerfile
The Dockerfile now sets NODE_ENV=production so the database path logic triggers automatically without requiring environment variable configuration.
19 February 2026
Koher Venue Launched
New subdomain
Launched venue.koher.app — quarterly interactive art experiences exploring AI judgement. Season 1 "You Are The Model" opens: visitors judge design concepts under time pressure with partial information, then compare their patterns to an AI's.
Added
Venue section on homepage
New "The Venue" section after Positions, introducing the art practice alongside the tools and philosophy. Links to venue.koher.app.
Added
Venue link in footer
Footer navigation now includes Changelog · Positions · Venue.
Venue embodies the Koher philosophy rather than explaining it. Where tools demonstrate the architecture technically, venue lets visitors feel what judgement under constraint means experientially.
Analytics: All Time Filter
Enhancement + Bug fix
Added "All time" option to the time period selector in the analytics dashboard.
Added
All time range option
Dashboard time filter now includes: Last 24 hours, Last 7 days, Last 30 days, Last 90 days, and All time.
Fixed
Falsy zero bug in time range
The 'all' range returned 0 (no lower bound), but JavaScript's || operator treated 0 as falsy and defaulted to 7 days. Changed to in check so 0 is correctly returned for 'all'.
Enables viewing complete historical data from when analytics began, useful for overall trend analysis and total visitor counts.
18 February 2026
Analytics: UTM Medium Column
Bug fix
Added missing "Medium" column to UTM Campaigns table in analytics dashboard.
Fixed
UTM Campaigns table display
Before
Campaign | Source | Visits
After
Campaign | Source | Medium | Visits
The database query groups by utm_medium but the table wasn't displaying it — causing rows with identical campaign/source but different mediums to appear as duplicates with unexplained different counts.
18 February 2026
Homepage: Monthly Practice Framing
Copy and structure
Clarified that making Koher tools is a monthly practice. Updated homepage to reflect tools released so far rather than singular "the working tool."
Changed
Hero CTA button
Before
See the working tool
After
See the tools released so far
The singular "tool" implied a single demonstration. The practice is monthly releases — plural framing reflects the ongoing nature.
Added
Tools section heading and practice framing
The tools section now has "The Practice" label and heading "One tool per month. Open source. Running now." with introductory text: "Making tools is the practice. Each month, one small tool ships — demonstrating the architecture in a specific domain."
The previous version jumped straight to showing the tool without explaining the rhythm of the practice. The new framing establishes that monthly releases are the mechanism, not a one-time demonstration.
Changed
Tools page link
Before
More tools shipping monthly — see all tools
After
One tool per month — see all tools released so far
Changed
Demo access copy (homepage and tools page)
Before
Register with your email to try the hosted demo (10 analyses per account).
After
Verify your email to try it now — 10 free analyses, no account setup.
Reduced friction language. "Register" implies a process; "verify your email" describes exactly what happens. Added "free" and "no account setup" to remove hesitation.
18 February 2026
Coherence Diagnostic: Email-Verified Access Gate
Tool authentication
Added a lightweight email-verification gate to the Coherence Diagnostic. Replaces the previous open-access model with controlled signups and usage limits.
Added
Email verification flow
Users enter name and email to receive a verification link. Clicking the link sets a session cookie granting access to the tool. No passwords, no OAuth — just email verification.
The tool was completely open. Each analysis uses DeBERTa inference + OpenRouter API credits. Without any gate, costs are unbounded and there's no way to understand who is using the tool.
Added
Usage limits
10 new user signups per day (resets daily). 10 analyses per user (lifetime). A waitlist captures overflow when the daily cap is reached.
Caps cost exposure while keeping the tool accessible. The daily signup limit prevents sudden spikes; the per-user limit encourages thoughtful use rather than casual testing.
Added
Session-only cookies
Authentication uses signed session cookies (via itsdangerous). Cookies are deleted when the browser closes — no persistent login.
Session-only cookies are the lightest viable auth. Users re-verify each browser session, which is acceptable for a demo tool. No password storage, no token refresh logic.
Added
Analyses counter in header
A subtle "X analyses left" counter appears in the header after authentication. Updates after each analysis completes.
Changed
Landing screen
Removed "No login." from the landing meta text, since login is now required.
Admin Dashboard: Adapted for Email Auth
Tool admin
Adapted the admin dashboard from the released coherence-diagnostic version to work with the new email-verified user model.
Changed
Admin API endpoints
Replaced the single /api/admin/dashboard endpoint with separate endpoints matching the old admin pattern: /api/admin/login, /api/admin/stats, /api/admin/users, /api/admin/waitlist. Protected by X-Admin-Key header.
The old admin had a proven login-then-query flow. Separate endpoints are easier to debug and extend.
Changed
Admin UI
Users table now shows Name, Email, Status (verified/pending), Usage, and Joined date. Removed the "Create New User" section (users self-register now). Added a Waitlist section. Stats grid shows Total Users, Verified, Signups Today, Analyses, Exhausted, and Waitlist counts.
The admin no longer creates users — it monitors self-registered users and their verification status.
Website Copy: Updated for Email Verification
Copy change
Updated public-facing pages to reflect the new self-service email verification flow, replacing references to invitation-based access.
Changed
Tools page subtitle
Before
Hosted demos available by invitation — email hello@koher.app to request access.
After
Hosted demos require email verification — 10 analyses per account.
Access is now self-service. The old copy implied a manual gatekeeping step that no longer exists.
Changed
Homepage tool card access note
Before
Hosted demo by invitation — email hello@koher.app for access.
After
Register with your email to try the hosted demo (10 analyses per account).
18 February 2026
Homepage: proof before philosophy
Above-the-fold revision
Restructured the homepage so a visitor sees working tools within seconds, not after six sections of abstract positioning.
Changed
Hero section
Replaced "Koher is a philosophy..." tagline with "Working tools built on a simple separation..." and changed primary CTA from "Read Our Positions" to "Try the Coherence Diagnostic". Added pipeline indicator (DeBERTa / Rules / Haiku).
The hero was entirely abstract — philosophy, architecture, positions. Someone landing on the page had no signal that working tools existed. The new hero communicates "this is real, try it now" within the first screen.
Changed
Tool section moved to position 2
The Coherence Diagnostic card now appears immediately after the hero (first scroll), moved from position 7. Status changed from "Demo" to "Live".
The tool was buried behind six explanation sections. A visitor who came to see if this was real had to scroll through philosophy, problem framing, architecture diagrams, and practice statements before finding proof. Now proof is the first thing after the hero.
Removed
"The Practice" section
Removed the section containing "A body of thought, not a product" and "This is not a startup. This is a practice." headings.
These lines actively told visitors "this isn't a real thing." For someone trying to determine whether Koher produces working tools, this section was counterproductive. The practice philosophy lives in the position statements for those who seek it.
17 February 2026
SEO Infrastructure
Site-wide improvement
Comprehensive SEO optimisation across all pages. Added crawl infrastructure, structured data, and consistent meta tags for social sharing.
Added
robots.txt and sitemap.xml
Created robots.txt declaring the sitemap location, and sitemap.xml listing all six pages with update frequencies and priorities.
Search engines can discover pages through links, but explicit sitemap declaration helps them find all pages efficiently and understand update frequency. The robots.txt also serves as the canonical location for sitemap declaration.
Added
Canonical URLs on all pages
Every page now includes a <link rel="canonical"> tag pointing to the canonical URL without .html extension.
Without canonical URLs, search engines may index URLs with and without trailing slashes as separate pages, or index both /position-architecture and /position-architecture.html.
Added
Twitter Card tags on secondary pages
All pages (tools, positions, position-architecture, position-being-around, changelog) now include Twitter Card meta tags mirroring their Open Graph content.
Only index.html had Twitter Card tags. When other pages were shared on Twitter/X, they displayed without rich previews.
Added
JSON-LD structured data
Added Schema.org structured data: SoftwareApplication schema on the homepage, Article schema on position pages (position-architecture, position-being-around).
Structured data helps search engines understand what Koher is (a software application/philosophy) and that the position statements are articles with specific publication dates and authorship.
Fixed
og:url inconsistencies
Position pages had og:url values ending in .html while internal links used paths without the extension. Now aligned to canonical URLs without .html.
Added
Open Graph tags on changelog
The changelog page was missing all Open Graph tags. Now includes og:type, og:url, og:title, og:description, and og:image.
Deployment Script Fix
Infrastructure
Updated the CapRover deployment script to include SEO files.
Fixed
robots.txt and sitemap.xml now included in deployment
Added robots.txt and sitemap.xml to the INCLUDE_FILES array in make-caprover-tar.sh.
The deployment script used an explicit include-list. SEO files created earlier in the day were not being deployed to production because they were not added to this list.
Google Search Console Submission
SEO
Site deployed to production and submitted to Google Search Console.
Added
koher.app submitted to Google Search Console
Sitemap submitted at https://koher.app/sitemap.xml. All six pages now discoverable by Google's crawlers.
16 February 2026
Coherence Diagnostic: Logout Button
Tool fix
Added logout functionality to the Coherence Diagnostic demo. Previously, once authenticated, users remained logged in permanently with no way to clear the stored password.
Added
Logout link in header
A "Logout" link now appears in the header next to "All Tools" when the user is authenticated. Clicking it clears the stored password from localStorage and returns to the password modal.
The authentication system stored credentials in localStorage permanently with no mechanism to clear them. Users who wanted to test with a different password, or simply wanted to log out, had no way to do so without manually clearing browser storage.
Coherence Diagnostic: Usage Counter on Page Load
Tool fix
The usage counter ("X analyses remaining") now displays immediately on page load for authenticated users, rather than only appearing after completing an analysis.
Added
User status endpoint and initial fetch
Backend now exposes a /user/status endpoint that returns remaining analyses without consuming one. The frontend calls this endpoint on page load when a stored password exists.
Previously, the server tracked usage in SQLite but only returned the remaining count after completing an analysis. Users who logged in couldn't see how many analyses remained until they ran one. The admin panel showed correct counts (e.g., "2/10") but the frontend showed nothing until an analysis was performed.
Coherence Diagnostic: OpenRouter Migration
Infrastructure change
Stage 3 (language layer) now uses OpenRouter instead of the direct Anthropic API. The DeBERTa model downloads on first deploy rather than being bundled in the Docker image.
Changed
Anthropic API → OpenRouter
The Stage 3 language layer now calls Claude Haiku via OpenRouter (anthropic/claude-haiku-4.5) using the OpenAI SDK, rather than the direct Anthropic API. Environment variable changed from ANTHROPIC_API_KEY to OPENROUTER_API_KEY.
OpenRouter provides a unified API across multiple model providers. This allows future flexibility in model selection without code changes, and simplifies API key management for users who already have OpenRouter accounts.
Changed
First-deploy model download
The DeBERTa model (~750MB) now downloads automatically on first container start via entrypoint.sh, rather than being bundled in the Docker image. The model persists in a volume at /app/models.
Bundling the model in the Docker image made builds slow and images large. Downloading on first deploy keeps the image small (~200MB) while the model persists across container restarts. Subsequent deploys skip the download entirely.
15 February 2026
Second Position Statement
Content addition
A new position statement published to the Positions page: "Being Around" — on the philosophy of staying with practice rather than setting expectations that become exit ramps.
Published
Being Around (/position-being-around)
A position statement on staying with practice long enough for significance to accrue. The core insight: "It is more important to be around than to be big." The piece describes the mechanism by which over-investment creates exit ramps, and how Koher refuses that pattern through monthly shipping, open source, and metrics that invite continuation rather than justify departure.
The Architecture Specification explains what the three-layer pattern is. This piece explains how Koher intends to stay with the practice — the philosophy of compounding over scaling. Together, the two positions establish both the technical architecture and the temporal commitment.
Added
Position card on /positions
The Positions page now displays two cards: "Being Around" (15 February) and "Architecture Specification" (13 February), in reverse chronological order.
Updated
Homepage Positions section
The Positions section on the homepage now shows both position statements with dates: "Being Around" (15 Feb) and "Architecture Specification" (13 Feb). Previously showed only the Architecture Specification.
The homepage should surface recent positions, similar to how the Tools section shows recent tools. As more positions are published, the section will show the 3 most recent.
Unchanged
What stayed the same
- Tools page and Coherence Diagnostic
- Architecture Specification position statement
- Subscription tiers and pricing
- Visual design
Koher's philosophical foundation now has two pillars: what the architecture is (separation of language and judgement), and how the practice sustains itself (staying with the work regardless of external validation). The Positions page grows as the body of thought develops.
Institutional Deployment Tier
Service offering
A new service tier for universities and educational institutions that want to use existing Koher tools but lack technical capacity to self-deploy.
Added
Institutional Deployment — ₹15,000
One-time deployment service: scoping call, deployment to client infrastructure, branding and threshold configuration, handover documentation, training call, and 2 weeks post-deployment support. First 50 institutions at early adopter pricing.
The tools are open source and free, but "clone repo, install dependencies, configure API keys" excludes the natural audience — educators. This tier makes the tools accessible to those who recognise their value but lack technical capacity.
Structure
Tiered pricing
- First 50 institutions: ₹15,000 (early adopter)
- Institutions 51–150: ₹20,000
- After 150: ₹20,000 + ₹10,000/year support
- Additional customisation rounds: ₹5,000 each
- Annual support retainer (optional): ₹10,000/year
Volume-based pricing rewards early adopters and introduces recurring revenue at scale. Infrastructure and API costs borne by client — no margin compression.
Restructured
"Ways to Work Together" section
The consultancy section is renamed from "For Those Who Want Help" to "Ways to Work Together." Tiers split into two sub-sections: One-time (Single Session, Institutional Deployment) and Ongoing (Advisory, Architecture, Development). Architecture Map tier removed.
The new framing better describes the range of engagements — from a single call to full development — without implying that only "help" is available.
Removed
"Off-the-shelf solution deployment" from Boundaries
The "What we don't do" section previously included "Off-the-shelf solution deployment." This is now removed since Institutional Deployment does exactly that — deploys existing tools for clients.
The gap between "free and open source" and "custom architecture work" excluded universities — the natural audience for tools born from 15 years of design education. Institutional Deployment closes that gap without compromising the philosophy: tools remain free, the service is setup labour.
Tools Page Refinements
Visual and copy
Small refinements to the Tools page for clarity and visual polish.
Fixed
SVG pipeline indicator overlap
The "DeBERTa → Rules → Haiku" pipeline indicator in the Coherence Diagnostic thumbnail was overlapping with the GAPS dimension. Moved to clear position.
Added
Demo access instructions
The page subtitle now includes how to request demo access: "email hello@koher.app to request access." Previously just said "Hosted demos available by invitation" without explaining how.
14 February 2026
First Tool Release
Tools infrastructure + Coherence Diagnostic v1.1.0
The Open Tools section is no longer empty. The first tool — Coherence Diagnostic — is released to GitHub and demo infrastructure. A dedicated Tools page lists available tools with source links and hosted demos.
Added
Tools page (/tools)
A dedicated page at /tools listing all open tools. Card-based layout with SVG thumbnails, demo links, and GitHub source links. Links to the new GitHub organisation: github.com/koherarchitecture.
The "Open Tools" section on the homepage pointed to an empty Lab. With the first tool ready, a proper tools page provides the destination — tool cards with descriptions, source links, and demo access.
Released
Coherence Diagnostic v1.1.0
The first Koher tool — a design concept coherence analyser. Takes a 2-8 sentence concept and shows what's strong, thin, or unclear across five dimensions (CLAIM, EVIDENCE, SCOPE, ASSUMPTIONS, GAPS). Three-stage pipeline: DeBERTa qualifies, deterministic rules judge, Haiku narrates.
Source
github.com/koherarchitecture/coherence-diagnostic
Demo
coherence-demo.koher.app (by invitation)
This is the tool that was removed from the homepage on 13 February. It returns — not as a "proof of concept" the architecture must stand or fall by, but as one small tool demonstrating the three-layer separation. Open source under MIT licence; users clone the repo, bring their own Anthropic API key, run locally.
Features
User management and comparison modes (v1.1.0)
- User management with SQLite storage
- Admin panel at /admin for creating users
- Usage limits: 10 analyses per user, 10 new users per day
- Three-mode toggle: Koher pipeline, Direct AI, Side-by-Side comparison
- History tabs showing previous analyses
- Sample concepts button for quick testing
- 60-second timeout with refresh prompt
The comparison modes let users see the difference between the Koher architecture (DeBERTa → Rules → Haiku) and direct AI prompting. The user management prevents abuse of the hosted demo while keeping it accessible by invitation.
Established
Demo URL pattern
Pattern
[toolname]-demo.koher.app
All future tool demos will follow this pattern. The main website remains at koher.app; each tool demo lives at its own subdomain.
Clear separation between the philosophy (koher.app) and the demonstrations ([tool]-demo.koher.app). Each tool is independent infrastructure.
Unchanged
What stayed the same
- Homepage content and structure
- Positions page
- Subscription tiers and pricing
- Visual design — colours, typography, layout
This release completes the infrastructure announced on 13 February: the Lab is no longer empty. Tools ship monthly, open source, one at a time. The architecture speaks through working code.
13 February 2026
Philosophy Pivot
Major reframe
Koher.app shifts from a consultancy service page to a philosophy-first site. The core architecture and subscription tiers remain. The tool demo is removed. A Lab section and practice framing are added.
Rewritten
Page title and meta tags
Before
Koher — AI Tool Design for Domain Experts
After
Koher — AI Handles Language. Code Handles Judgement.
The site now leads with the philosophical insight, not a service description. The first thing someone reads should be the idea, not an offering.
Rewritten
Hero section
Before
"AI Tool Design for Domain Experts" with "Get in Touch" button
After
"AI handles language. Code handles judgement." with "Read the Architecture" button
The first action should be reading the architecture, not emailing. The philosophy needs to land before any conversation starts.
Added
The Practice section
New section after "The Approach" — four short paragraphs setting the practice frame. "The architecture is the constant. The tools evolve... This is not a startup. This is a practice."
The site had no philosophical anchor. The architecture was presented as a service offering rather than a body of thought. This section establishes that Koher is a long-term practice — tools ship when they crystallise, open source, under MIT licence.
Replaced
Proof of Concept → Open Tools
Before
A "Proof of Concept" section showing a mockup of the design coherence diagnostic tool with sample output across five dimensions.
After
An "Open Tools" section — empty for now, framed as a growing collection. "Small tools. Open source. One at a time."
The design coherence tool will not be released in its current form. It was specific to one domain (design education), one audience (students and faculty), one user level (early-stage concept formation), and one maker level (the practitioner's current implementation capacity). Presenting it as "proof of concept" made the architecture's credibility hostage to a single tool that most visitors would find irrelevant to their domain. Ideas do not get second chances. The Lab section honestly states that no tools are released yet, and frames the practice of shipping small tools as they arrive.
Reframed
Subscription Plans → For Those Who Want Help
Before
"Subscription Plans" — "Annual subscriptions. First month free."
After
"For Those Who Want Help" — "The tools are free. The consultancy is for those who want help."
The subscription tiers are real offerings and remain unchanged in price and content. The framing shifts from a sales climax to an option. The consultancy exists for those who want to apply the architecture in their domain.
Restructured
Open offering separated from subscription tiers
The subscription section is split into two parts. First: a statement that the tools and architecture are free — always, for everyone, no signup. This is an offering, not a subscription tier. Second: the paid consultancy tiers for those who want help applying the architecture.
The Open offering is not a subscription. It should not sit alongside subscription cards as though it were one. It is a statement of principle: the tools and architecture are free for use. The consultancy is a separate, optional engagement.
Added
Single Session tier (₹5,000, one-time)
One 90-minute call to explore whether the three-layer architecture applies to the visitor's domain. No commitment beyond the session.
The jump from Free to ₹20,000/month annual subscription was too steep. Someone interested in the architecture needs a way to test the fit without committing to an annual engagement.
Added
Architecture Map tier (₹25,000, one-time)
Written analysis mapping the three-layer architecture to the visitor's specific domain problem. Includes one 60-minute call and a written deliverable: what gets qualified, what rules encode, what the language layer handles.
Some organisations want a clear picture of how the architecture applies before deciding to build. This deliverable-based engagement provides that picture without requiring an ongoing subscription.
Added
Follow the Work section
"New tool when it arrives. No spam. No pitch."
Lower commitment than emailing. For people who are interested but not ready for a conversation.
Rewritten
Contact section
Before
"Start Your Free Trial" — "One month free. See if the Koher architecture fits your domain."
After
"Get in Touch" — "If the architecture resonates with a problem in your domain, reach out."
"Start Your Free Trial" is SaaS language. It frames the interaction as a sales conversion. The revised copy frames it as a conversation.
Added
Positions page
A new page at /positions to host philosophical statements and positions on AI, judgement, and domain expertise. Empty at launch, ready for when positions are published.
Koher is a philosophy. The website needs a place to publish positions and statements of principle. Each position is a dated, titled entry. The page grows as the practice evolves.
Added
Changelog page
This page. A styled public record of every change to koher.app, with rationale. Linked from the footer.
Transparency about the evolution of the site and the thinking behind it.
Unchanged
What stayed the same
- The Problem section
- What Separation Means section (mixed vs. separated table)
- The Approach section (three-layer architecture panel)
- Where This Applies section (domain grid)
- Subscription tier prices (Advisory ₹20K, Architecture ₹50K, Development ₹1.5L)
- Subscription tier content and deliverables
- What We Don't Do section
- Track Record section
- Visual design — all colours, typography, layout
- Logo (Three Braid)
This change follows a pivot: Koher is a philosophy and ongoing practice, not a startup seeking product-market fit. The website presents the idea in its strongest form — the writing — and lets tools ship as small, honest demonstrations of the architecture when they crystallise.
8 February 2026
Initial Launch
v1.0.0
Koher.app launched as a consultancy service page for AI tool design. Single-page site with architecture explanation, proof of concept mockup, subscription tiers, and contact CTA. Built with vanilla HTML/CSS, served via Node.js/Express on CapRover.