Rebrand as Semantika with honest, inspiration-based claims

Applies the brand platform consistently across the codebase:

- Name: Semantika everywhere — app name/slug/scheme, bundle ids
  (com.semantika.app), workspace package names, CDK stack, Cognito
  domain prefix, secret name (semantika/app), database name, product
  ids (semantika_monthly/_yearly), and storage keys.
- System instructions: Semantika is positioned as an intelligent
  reflection partner — not therapy, not self-help, not a course. It
  starts by exploring how the user interprets their situation and
  supports reflection and perspective-taking rather than delivering
  finished answers. Tone rules added: never judging, dramatic,
  overenthusiastic or preaching; always calm, curious, clear,
  respectful, structured, thoughtful.
- Honest claims: instructions and knowledge base now explicitly frame
  neurosemantics and NLP as models and inspiration for reflection, not
  scientifically established methods — including a note that several
  NLP claims lack support in controlled studies. Claiming or implying
  proven effects is forbidden.
- README: brand section (position, promise, mission, vision,
  positioning, tone, design words) and updated product philosophy.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0118DaxZR36RpnY524vRqx3z
This commit is contained in:
Claude
2026-08-03 14:46:10 +00:00
parent 6b7f0263e4
commit 07234cc9a8
18 changed files with 144 additions and 62 deletions
@@ -1,9 +1,9 @@
import { App } from 'aws-cdk-lib';
import { NeuroSemanticsStack } from '../lib/neurosemantics-stack.js';
import { SemantikaStack } from '../lib/semantika-stack.js';
const app = new App();
new NeuroSemanticsStack(app, 'NeuroSemantics', {
new SemantikaStack(app, 'Semantika', {
env: {
account: process.env.CDK_DEFAULT_ACCOUNT,
region: process.env.CDK_DEFAULT_REGION ?? 'eu-north-1',
+1 -1
View File
@@ -1,5 +1,5 @@
{
"app": "npx tsx bin/neurosemantics.ts",
"app": "npx tsx bin/semantika.ts",
"context": {
"@aws-cdk/aws-lambda:recognizeLayerVersion": true,
"@aws-cdk/core:checkSecretUsage": true,
@@ -15,14 +15,14 @@ import { dirname, join } from 'node:path';
const repoRoot = join(dirname(fileURLToPath(import.meta.url)), '..', '..');
const DB_NAME = 'neurosemantics';
const APP_SCHEME_REDIRECT = 'neurosemantics://redirect';
const DB_NAME = 'semantika';
const APP_SCHEME_REDIRECT = 'semantika://redirect';
/**
* The entire system: one HTTP API, one Lambda, one database, one user pool,
* one application secret. CloudWatch logging comes with Lambda by default.
*/
export class NeuroSemanticsStack extends Stack {
export class SemantikaStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
@@ -46,9 +46,8 @@ export class NeuroSemanticsStack extends Stack {
// --- Application secret (filled in manually after first deploy) ---
const appSecret = new secretsmanager.Secret(this, 'AppSecret', {
secretName: 'neurosemantics/app',
description:
'OPENAI_API_KEY, APPLE_SHARED_SECRET, GOOGLE_SERVICE_ACCOUNT_JSON for NeuroSemantics AI',
secretName: 'semantika/app',
description: 'OPENAI_API_KEY, APPLE_SHARED_SECRET, GOOGLE_SERVICE_ACCOUNT_JSON for Semantika',
});
// --- Authentication: Cognito with Apple, Google and email ---
@@ -61,7 +60,7 @@ export class NeuroSemanticsStack extends Stack {
removalPolicy: RemovalPolicy.RETAIN,
});
const domainPrefix = this.node.tryGetContext('cognitoDomainPrefix') ?? 'neurosemantics';
const domainPrefix = this.node.tryGetContext('cognitoDomainPrefix') ?? 'semantika';
const domain = userPool.addDomain('Domain', { cognitoDomain: { domainPrefix } });
// Apple/Google federation requires developer credentials; provide them via
@@ -91,7 +90,7 @@ export class NeuroSemanticsStack extends Stack {
if (appleTeamId && appleKeyId && applePrivateKeySecretName) {
new cognito.UserPoolIdentityProviderApple(this, 'Apple', {
userPool,
clientId: 'com.neurosemantics.app.signin',
clientId: 'com.semantika.app.signin',
teamId: appleTeamId,
keyId: appleKeyId,
privateKeyValue: secretsmanager.Secret.fromSecretNameV2(
+1 -1
View File
@@ -1,5 +1,5 @@
{
"name": "@neurosemantics/infra",
"name": "@semantika/infra",
"version": "1.0.0",
"private": true,
"type": "module",