Atlas / Skills / lellis-group / kineo-nest-backend

kineo-nest-backendBLOCK

skills/lellis-group/kineo-nest-backend

NestJS backend for a platform connecting installed doctors with replacement doctors in France, cutting administrative friction around finding, applying for, and managing medical replacements between practices.

Verdict
BLOCK
Grade
F
Trust score
48 /100
Version
7.6.0
Hosts
1 documented
License
—
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Application connecting established doctors with locum doctors (replacements) in France, with a differentiating positioning focusing on administrative automation (contracts, RPPS verification, statuses) rather than just simple job listings.

This document serves both as a product specification for a human and as context for an AI taking over the code (architecture, entities, flows, conventions). This specifically targets the backend of the fullstack project.

1. Context and Positioning

The market already includes established players:

  • MonRempla / Rempla (regional network backed by CNOM) — leader, verification via the Medical Council.
  • RemplaMed, MesRemplas, Remplaclinic, RemplaJob — private actors, classic matchmaking.

Targeted differentiation: reduce administrative friction rather than simply duplicating matchmaking.

MVP scope (minimal functional perimeter):

  1. Registration / authentication (established doctor or locum)
  2. Doctor profile (specialty, status, geographical area)
  3. Publishing a replacement listing (practice, dates, specialty)
  4. Search / apply for a listing
  5. Application lifecycle with transparent status tracking (no messaging/conversation module yet)
  6. Listing status (draft → open → in discussion → full → filled → closed/cancelled)

Out of MVP scope: contract generati

Read from source at commit 922e9156fe08OBSERVED · 2026-10-11
Advertisement
02

Install

Commands as the repository documents them. They are shown, not run.

npm install prisma --save-dev
npm install @prisma/client
npm install @prisma/adapter-pg pg
npm install @prisma/adapter-mariadb mariadb
npm install @prisma/adapter-pg pg
npm install prisma --save-dev
03

Host compatibility

What the documentation claims. We have not run a compatibility test.

HostStatusNotes
cursormentioned
04

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: prisma-cli
description: Prisma ORM CLI commands reference covering init, generate, migrate, db, dev, studio, validate, format, debug, and mcp. Use for ORM/database CLI workflows, not Prisma Compute app deployment. For Prisma Compute, `@prisma/cli app deploy`, `compute:deploy`, `create-prisma --deploy`, apps, deployments, logs, or domains, use the `prisma-compute` skill instead. Triggers on "prisma init", "prisma generate", "prisma migrate", "prisma db", "prisma studio", "prisma mcp".
license: MIT
metadata:
  author: prisma
  version: "7.6.0"
---

# Prisma CLI Reference

Reference for Prisma ORM CLI commands. This skill provides guidance on command usage, options, and best practices for current Prisma ORM releases.

## Boundary: Compute

Do not use this skill for Prisma Compute app deployment. Use `prisma-compute` for `@prisma/cli app deploy`, `compute:deploy`, `create-prisma --deploy`, Compute apps, deployments, logs, domains, and framework deploy readiness.

## When to Apply

Reference this skill when:
- Setting up a new Prisma project (`prisma init`)
- Generating Prisma Client (`prisma generate`)
- Running database migrations (`prisma migrate`)
- Managing database state (`prisma db push/pull`)
- Using local development database (`prisma dev`)
- Debugging Prisma issues (`prisma debug`)

## Rule Categories by Priority

| Priority | Category | Impact | Prefix |
|----------|----------|--------|--------|
| 1 | Setup | HIGH | `init` |
| 2 | Generation | HIGH | `generate` |
| 3 | Development | HIGH | `dev` |
| 4 | Database | HIGH | `db-` |
| 5 | Migrations | CRITICAL | `migrate-` |
| 6 | Utility | MEDIUM | `studio`, `validate`, `format`, `debug`, `mcp` |

## Command Categories

| Category | Commands | Purpose |
|----------|----------|---------|
| Setup | `init` | Bootstrap new Prisma project |
| Generation | `generate` | Generate Prisma Client |
| Validation | `validate`, `format` | Schema validation and formatting |
| Development | `dev` | Local Prisma Postgres for development |
| Database | `db pull`, `db push`, `db seed`, `db execute` | Direct database operations |
| Migrations | `migrate dev`, `migrate deploy`, `migrate reset`, `migrate status`, `migrate diff`, `migrate resolve` | Schema migrations |
| Utility | `studio`, `mcp`, `version`, `debug` | Development and AI tooling |

## Quick Reference

### Project Setup

```bash
# Initialize new project (creates prisma/ folder and prisma.config.ts)
prisma init

# Initialize with specific database
prisma init --datasource-provider postgresql
prisma init --datasource-provider mysql
prisma init --datasource-provider sqlite

# Initialize with Prisma Postgres (cloud)
prisma init --db

# Initialize with an example model
prisma init --with-model
```

### Client Generation

```bash
# Generate Prisma Client
prisma generate

# Watch mode for development
prisma generate --watch

# Generate specific generator only
prisma generate --generator client
```

### Bun Runtime

When using Bun, always add the `--bun` flag so Prisma runs with the Bun runtime (otherwise it falls back to Node.js because of the CLI shebang):

```bash
bunx --bun prisma init
bunx --bun prisma generate
```

### Local Development Database

```bash
# Start local Prisma Postgres
prisma dev

# Start with specific name
prisma dev --name myproject

# Start in background (detached)
prisma dev --detach

# List all local instances
prisma dev ls

# Stop instance
prisma dev stop myproject

# Remove instance data
prisma dev rm myproject
```

### Database Operations

```bash
# Pull schema from existing database
prisma db pull

# Push schema to database (no migrations)
prisma db push

# Seed database
prisma db seed

# Execute raw SQL
prisma db execute --file ./script.sql
```

### Migrations (Development)

```bash
# Create and apply migration
prisma migrate dev

# Create migration with name
prisma migrate dev --name add_users_table

# Create migration without applying
prisma migrate dev --create-only

# Reset database and apply all migrations
prisma migrate reset
```

### Migrations (Production)

```bash
# Apply pending migrations (CI/CD)
prisma migrate deploy

# Check migration status
prisma migrate status

# Compare schemas and generate diff
prisma migrate diff --from-config-datasource --to-schema schema.prisma --script
```

### Utility Commands

```bash
# Open Prisma Studio (database GUI)
prisma studio

# Start Prisma's MCP server for AI tools
prisma mcp

# Show version info
prisma version
prisma -v

# Debug information
prisma debug

# Validate schema
prisma validate

# Format schema
prisma format
```

## Current Prisma CLI Setup

### New Configuration File

Use `prisma.config.ts` for CLI configuration:

```typescript
import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'

export default defineConfig({
  schema: 'prisma/schema.prisma',
  migrations: {
    path: 'prisma/migrations',
    seed: 'tsx prisma/seed.ts',
  },
  datasource: {
    url: env('DATABASE_URL'),
  },
})
```

### Current Command Behavior

- Run `prisma generate` explicitly after `migrate dev`, `db push`, or other schema syncs when you need fresh client output
- Run `prisma db seed` explicitly after `migrate dev` or `migrate reset` when you need seed data
- Use `prisma db execute --file ...` for raw SQL scripts

### Environment Variables

Load environment variables explicitly in `prisma.config.ts`, commonly with `dotenv`:

```typescript
// prisma.config.ts
import 'dotenv/config'
```

## Rule Files

See individual rule files for detailed command documentation:

```
references/init.md           - Project initialization
references/generate.md       - Client generation
references/dev.md            - Local development database
references/db-pull.md        - Database introspection
references/db-push.md        - Schema push
references/db-seed.md        - Database seeding
references/db-execute.md     - Raw SQL execution
references/migrate-dev.md    - Development migrations
references/migrate-deploy.md - Productio
05

Trust audit

BLOCKgrade F · trust 48/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (5 observation(s))
Network
none-observed
Shell
none-observed
Dependencies
not all pinned
Secrets in source
found

Findings (22)

HIGHHard-coded secrets · secret.db_uri · CWE-798, CWE-321
.env.example:10
DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public"
HIGHHard-coded secrets · secret.db_uri · CWE-798, CWE-321
.env.example:13
SHADOW_DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/kineo_shadow?schema=public"
HIGHHard-coded secrets · secret.db_uri · CWE-798, CWE-321
.env.example:16
TEST_DATABASE_ADMIN_URL="postgresql://johndoe:randompassword@localhost:5432/postgres"
HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
.agents/skills/prisma-cli/SKILL.md:213
Load environment variables explicitly in `prisma.config.ts`, commonly with `dotenv`:
Why it matters. asks the agent to read credentials
MEDIUMInventory / provenance · inv.symlink · CWE-1104
.claude/skills/prisma-cli
.claude/skills/prisma-cli
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
.claude/skills/prisma-client-api
.claude/skills/prisma-client-api
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
.claude/skills/prisma-database-setup
.claude/skills/prisma-database-setup
Why it matters. link not followed
MEDIUMInventory / provenance · inv.symlink · CWE-1104
.claude/skills/prisma-upgrade-v7
.claude/skills/prisma-upgrade-v7
Why it matters. link not followed
MEDIUMHard-coded secrets · secret.db_uri · CWE-798, CWE-321
.agents/skills/prisma-database-setup/references/prisma-postgres.md:29
DATABASE_URL="postgres://identifier:[email protected]:5432/postgres?sslmode=require"
MEDIUMHard-coded secrets · secret.db_uri · CWE-798, CWE-321
.github/workflows/ci.yml:30
DATABASE_URL: postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public
LOWInventory / provenance · inv.no_license · CWE-1104
Why it matters. no LICENSE file and no repo licence
Fix. add a licence
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/account-deletion/dto/confirm-account-deletion.dto.ts:3
import { tokenSchema } from "../../lib/auth/schemas";
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/applications/dto/create-application.dto.ts:3
import { textField } from "../../common/validation/text";
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/applications/dto/find-applications.dto.ts:7
} from "../../common/pagination";
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/applications/dto/find-applications.dto.ts:8
import { ApplicationStatus } from "../../generated/prisma/enums";
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/applications/dto/reject-application.dto.ts:3
import { textField } from "../../common/validation/text";
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@nest-lab/throttler-storage-redis, @nestjs/common, @nestjs/config, @nestjs/core, @nestjs/mapped-types, @nestjs/platform-express, @nestjs/schedule, @nestjs/swagger
Why it matters. 32 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
README.md:348
The endpoint is `POST /account/confirm-deletion` with the token from the emailed
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
.agents/skills/prisma-upgrade-v7/references/env-variables.md:13
You must manually load environment variables using `dotenv` or similar.
Why it matters. asks the agent to read credentials
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
.agents/skills/prisma-upgrade-v7/references/env-variables.md:75
// Load specific .env file
Why it matters. asks the agent to read credentials
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
.agents/skills/prisma-upgrade-v7/references/prisma-config.md:128
This provides type safety but does NOT load .env files automatically.
Why it matters. asks the agent to read credentials
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
README.md:280
- **Sensitive zones** (accepted, not fixed): `verification` holds the password-reset and account-deletion tokens in clear text — better-auth stores the email-verification ones as signed JWTs instead,
Why it matters. asks the agent to read credentials

Gates applied: no_behavioural_pass, no_license.

Audited 2026-10-11 · audit v0.4.1 · source sha 922e9156fe08full audit observations/trust-audit/skill/lellis-group__kineo-nest-backend.json · Report an issue / request a re-scan
06

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-11922e9156fe08BLOCKF48first audit
07

Questions

What does the kineo-nest-backend skill do?

NestJS backend for a platform connecting installed doctors with replacement doctors in France, cutting administrative friction around finding, applying for, and managing medical replacements between practices.

Is kineo-nest-backend safe to install?

No — not without reading the findings first. The audit graded it F (48/100) and found 4 critical or high issues in the source. Each one is listed on this page with the file and line it is on.

What can kineo-nest-backend access on my machine?

The audit observed that it reads or writes files. Each of those is consistent with what it says it does. Secrets in the source: found — see the findings.

Which assistants does kineo-nest-backend work with?

Its documentation mentions cursor. That is what the text claims, not a compatibility test we ran.

How current is this page?

The grade is for one exact copy of the source (922e9156fe08), read on 2026-10-11. The repository is watched, and a new audit runs when it changes — this is the first audit.

Advertisement