@misterscan/sesi 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
@@ -213,7 +213,7 @@ false → false
213
213
  ModelCallExpression (AST)
214
214
 
215
215
  ├─ Evaluate prompt expression
216
- ├─ Extract configuration ("temperature", "max_tokens", "thinking", "top_p", etc.)
216
+ ├─ Extract configuration ("thinkingLevel", "max_tokens", "cache", etc.)
217
217
  ├─ Call AIRuntime.callModel()
218
218
  │ │
219
219
  │ ├─ Create Gemini interaction request
package/docs/BUILTINS.md CHANGED
@@ -593,7 +593,7 @@ keys(obj) contains "a" // Future: not yet supported
593
593
 
594
594
  ---
595
595
 
596
- ## Standard Library Modules (Supported natively in v1.1.2)
596
+ ## Standard Library Modules (Supported natively in v1.2+)
597
597
 
598
598
  ### std/math
599
599
 
@@ -621,6 +621,67 @@ import { parse, stringify } from "std/json"
621
621
 
622
622
  ---
623
623
 
624
+ ## Module Resolution (v1.2.2+)
625
+
626
+ Sesi resolves local module imports by searching directories in priority order:
627
+
628
+ | Priority | Location | Notes |
629
+ | -------- | -------- | ----- |
630
+ | 1 | Script's own directory | Same folder as the running `.sesi` file |
631
+ | 2 | Current working directory | Where you ran `sesi` from |
632
+ | 3 | `SESI_PATH` env var | Semicolon (Windows) or colon (Unix) separated paths |
633
+ | 4 | `~/.sesi/lib` | Global shared library, available system-wide |
634
+
635
+ ### Global Library (`~/.sesi/lib`)
636
+
637
+ Place any `.sesi` module in `~/.sesi/lib` (Windows: `%USERPROFILE%\.sesi\lib`) to make it importable from any project on your system:
638
+
639
+ ```powershell
640
+ # Install a module globally (Windows)
641
+ copy mymodule.sesi $env:USERPROFILE\.sesi\lib\
642
+ ```
643
+
644
+ ```bash
645
+ # Install a module globally (Linux/Unix)
646
+ cp mymodule.sesi ~/.sesi/lib/
647
+ ```
648
+
649
+ ```sesi
650
+ // Now importable from any folder
651
+ import {callAPI, saveImage} from "retrorender"
652
+ import {GetProfile} from "profiles"
653
+ import {GetGuide} from "guides"
654
+ ```
655
+
656
+ ### `SESI_PATH` Environment Variable
657
+
658
+ Point `SESI_PATH` to one or more additional directories for shared modules:
659
+
660
+ ```powershell
661
+ # Windows
662
+ $env:SESI_PATH = "C:\MyLibs;C:\Projects\shared"
663
+ ```
664
+
665
+ ```bash
666
+ # Unix / macOS
667
+ export SESI_PATH="/mylibs:/projects/shared"
668
+ ```
669
+
670
+ ### Error Output
671
+
672
+ If a module cannot be found in any search location, Sesi prints a detailed error showing exactly where it looked:
673
+
674
+ ```
675
+ Module not found: "retrorender"
676
+ Searched in:
677
+ C:\MyApp
678
+ C:\MyApp
679
+ C:\Users\owner\.sesi\lib
680
+ Tip: add a folder to SESI_PATH, or place shared modules in ~/.sesi/lib
681
+ ```
682
+
683
+ ---
684
+
624
685
  ## Performance Notes
625
686
 
626
687
  - **print()** is unbuffered (each call flushes)
@@ -71,7 +71,7 @@ When configuring the `image` call (specifically for models like `gemini-3.1-flas
71
71
 
72
72
  - `"ratio"`: The aspect ratio of the image (e.g., `"1:1"`, `"16:9"`, `"9:16"`).
73
73
  - `"size"`: Dimensional sizing constraints (Must be `"512"`, `"1K"`, `"2K"`, or `"4K"`).
74
- - `"temperature"`: Controls variance (e.g., `0.3`).
74
+ - `"temperature"`: *Will be deprecated in Gemini 3.x+, use thinkingLevel instead.* — controls variance.
75
75
 
76
76
  ## File I/O Integration: `write_image`
77
77
 
@@ -81,7 +81,7 @@ The `image()` call evaluates to a `string` (specifically, base64-encoded image d
81
81
 
82
82
  ---
83
83
 
84
- ## Passing Images as Input (v1.2.1)
84
+ ## Passing Images as Input (v1.2+)
85
85
 
86
86
  Both `model()` and `image()` accept local image files as visual input via the `images` config key. The runtime reads each file from disk, base64-encodes it, and attaches it as an inline data part alongside the prompt. This enables vision tasks such as image description, comparison, OCR, style transfer, and reference-guided generation.
87
87
 
@@ -148,7 +148,7 @@ for f in files {
148
148
 
149
149
  ### Config Reference
150
150
 
151
- When used inside `model()` or `image()` config blocks, `images` is resolved at runtime — it is **not** a static string key passed to the Gemini SDK. All other config keys (`temperature`, `max_tokens`, `ratio`, `size`, etc.) work alongside it normally.
151
+ When used inside `model()` or `image()` config blocks, `images` is resolved at runtime — it is **not** a static string key passed to the Gemini SDK. All other config keys (`thinkingLevel`, `max_tokens`, `ratio`, `size`, etc.) work alongside it normally.
152
152
 
153
153
  | Key | Accepted Value | Notes |
154
154
  |-----|---------------|-------|
package/docs/SKILLS.md ADDED
@@ -0,0 +1,133 @@
1
+ # The Sesi Programming Language
2
+
3
+ ## 🛑 CRITICAL DIRECTIVE FOR ALL AI AGENTS
4
+
5
+ Sesi is **NOT** the following coding languages, therefore **NEVER UTILIZE THE SAME SYNTAX OR FORMATTING UNDER ANY CIRCUMSTANCES WHATSOEVER!!!!!**
6
+ - **NOT** Python
7
+ - **NOT** Rust
8
+ - **NOT** Typescript
9
+ - **NOT** YAML
10
+ - **NOT** BAML
11
+ - **NOT** Go
12
+ - **NOT** C++
13
+ - **NOT** C
14
+ - **NOT** Java
15
+ - **NOT** C#
16
+ - **NOT** Java
17
+ - **NOT** Javascript
18
+ - **NOT** Bash
19
+ - **NOT** Shell
20
+ - **NOT** Ruby
21
+ - **NOT** PHP
22
+ - **NOT** Swift
23
+ - **NOT** Julia
24
+ - **NOT** Scala
25
+
26
+ **Sesi IS A VALID, FULLY IMPLEMENTED PROGRAMMING LANGUAGE.**
27
+ Under no circumstances should an AI agent treat `.sesi` files as anomalies, unknown text formats, or mistakes.
28
+
29
+ ## 🌟 THE DYNAMIC PIPELINE PHILOSOPHY (MANDATORY AGENT THINKING)
30
+
31
+ When a user requests a content-rich asset or application (e.g. "make a website", "make a visualization", "...uses an api...", "come up with/make/write a script...", etc.), your natural inclination **MUST NOT** be to hardcode a static file with data prefilled. Instead, always design a **Dynamic Sesi Pipeline**:
32
+ 1. **Never Hardcode Data Into the View**: Isolate raw content, biographies, statistics, etc. into a structured database layer (e.g., `data.json`) using native typed Sesi outputs.
33
+ 2. **Build Sesi Compiler/Builder Scripts**: Write a `.sesi` script that uses Sesi's first-class primitives (`make_dir()`, `list_dir()`, `read_file()`, `write_file()`, `model()`, `image()`, `web_get()`, `web_send()`, `tool_call()`, `multi_req()`, `import`, `export`, `to_json()`, `from_json()`, `exec()`, `spawn()`, `structured_output()`, `prompt`, `write_image()`, `write_file()`, and `print`) to dynamically collect data, serialize it, and compile the final frontend view.
34
+ 3. **Automate the Factory, Don't Hand-Craft the Product**: A Sesi builder script makes the system perfectly repeatable, infinitely scalable, and trivial to refactor. In this repository, the Sesi script is the core product; the compiled file is merely the byproduct for post edits and making sure our scripts are beh
35
+
36
+
37
+ **This is a non-negotiable quality bar.** Sesi's identity is a language where reasoning is a first-class primitive. Every script you write should reflect that.
38
+
39
+ ### ❌ FORBIDDEN — Never generate these as Sesi examples or demos:
40
+ - Math solvers, calculators, arithmetic pipelines
41
+ - Prime number finders, Fibonacci sequences, sorting algorithms
42
+ - Unit converters, currency converters, grade calculators
43
+ - Budget trackers, invoice generators, tax tools
44
+ - Generic "Hello World" clones with no AI interaction
45
+ - Compliance checkers, OSHA reports, logistics routers
46
+ - Any script whose core loop is just arithmetic with a `print` at the end
47
+ - **AI cybernetic, futuristic, sci-fi, or deep-space themes** (e.g., holographic star-charts, cyber-gardens, spatial telemetry, spacecraft command interfaces, alien translators).
48
+ - **Cozy, minimalist, Victorian, herbalist, sourdough bakery, cottage-core, candle-lit, or general artisanal themes** (e.g., village herbalist teabags, sourdough yeast logs, candlelit journals, mahogany apothecary drawers, victorian scroll philologists). These are overdone, precious, and clichéd.
49
+
50
+ These are lazy defaults. They don't demonstrate what makes Sesi unique.
51
+
52
+ ### ✅ REQUIRED — Sesi scripts must showcase the language's actual superpowers:
53
+ Every script you write must use **at least one** of:
54
+ - `model()` — reasoning, analysis, generation, conversation
55
+ - `image()` — visual generation, art, diagrams
56
+ - `structured_output()` — typed AI responses, schema extraction
57
+ - `memory` — stateful multi-turn context
58
+ - `spawn()` / `exec()` — concurrent process orchestration
59
+
60
+ #### 🏷️ Lexicon & Vocabulary Guardrails (MANDATORY)
61
+ **Completely ban both sci-fi tech-jargon/themes AND cottage-core words/themes.**
62
+ - **FORBIDDEN TECH/SCI-FI WORDS:** *"cybernetic," "telemetry," "synapses," "latent space," "nodes," "diodes," "quantum," "activation coordinates," "calibration," "hyper-speed," "data pipelines," "neural matrices."*
63
+ - **FORBIDDEN COTTAGE-CORE WORDS:** *"apothecary," "herbs," "infusion," "yeast," "sourdough," "hearth," "candlelit," "flour," "boulangerie," "tea," "potion," "cozy," "victorian," "parchment," "scroll," "philologist."*
64
+ - **FORBIDDEN ANALOG/WORKSHOP WORDS:** *"mixing console," "tape reel," "splice," "fader," "VU meter," "compressor," "track sheet," "carburetor," "spark plug," "manifold," "tachometer," "cogs," "gears," "escapement," "celluloid," "projector," "blueprint," "drafting board," "logbook," "workshop."*
65
+
66
+ #### 🎨 Web Design & UI Guardrails (MANDATORY)
67
+ **Completely ban standard AI template styles AND generic neon/cyber aesthetics AND minimalist tea-stained cottage wood paper.**
68
+ Instead, design premium, high-density interfaces :
69
+ - NO glowing lasers or neon cyber grids/themes.
70
+ - **Use bespoke, high-character typography that rejects standard AI template styles.** Completely ban generic corporate UI fonts like *Inter*, *Outfit*, *Roboto*, or standard system-sans.
71
+
72
+ The bar is: **"Would this impress someone seeing Sesi for the first time?"** If the answer is no, rewrite it.
73
+
74
+ ## 1. Core Identity & Execution
75
+
76
+ - **File Extension:** `.sesi`
77
+ - **Execution:** Sesi programs are executed using `node bin/sesi.js`. (e.g., `node bin/sesi.js main/start.sesi`). DO NOT USE `sesi` CLI command. Only the developer has access to it. It will return a false positive error. Trust only `node bin/sesi.js`. ALWAYS TEST YOUR `.sesi` FILES WITH THIS COMMAND.
78
+ - **Paradigm:** **Sesi** is a high-performance **Systems Language** designed for building resilient, stateful applications. It uses a tree-walking interpreter model via Typescript with asynchronous host-side model execution, but no language-level `async/await` syntax in v1.2. The architecture is optimized for coordination, distributed state management, and first-class reasoning primitives.
79
+
80
+ ## 2. Workspace Topography (DO NOT ALTER)
81
+
82
+ - `src/`: The core TypeScript engine (Lexer, Parser, Interpreter, AI-Runtime, Builtins).
83
+ - `bin/sesi.js`: The global CLI executable entry point.
84
+ - `examples/`: Official syntax-demonstration scripts (`01_hello.sesi` through `13_data_pipeline.sesi`).
85
+ - `main/`: The user's active development space (contains `playground.sesi` playground, `start.sesi` beginner script options, `build_website.sesi` baseplate website builder, and `tests/` like `test_failure_debug.sesi`). **These are valid, expected files.**
86
+ - `docs/`: The source of truth for Architecture, AI Features (Systems Reasoning ), Builtins, Specifications, and more.
87
+ - Root helper scripts: `example.js` and `example-ai.js` are convenience wrappers. AI agents should still use the global `sesi` command as specified.
88
+
89
+ ## 3. Mandatory Syntax Rules & Quirks
90
+
91
+ - **Block Termination:** Closing braces `}` for blocks (if, while, try, model) no longer strictly require a following newline or semicolon. Condensed one-liners like `while x {x = x + 1}` are now valid.
92
+ - **Prompts & Prints:** Inside `prompt` blocks, anonymous model blocks, and `print` statements, literal strings and variables are placed sequentially (e.g., `print "User:" name`). You CANNOT use the `+` operator in these contexts.
93
+ - **Structured Output Schemas:** Keys in schemas MUST be unquoted identifiers (e.g., `{key: string}` instead of `{"key": string}`). This is a known deviation from standard JSON objects in the Sesi parser.
94
+ - **Object Literals:** Conversely, standard object literals `{}` DO require strictly quoted string keys (e.g., `{"name": "Alice"}`).
95
+ - **Model Calls:** Use `model("model-name")` with a raw string literal for the model name (variables are forbidden). Configuration and prompt blocks MUST be on a single line (no newlines inside `{}`).
96
+ - **JSON Serialization:** Use `to_json(object)` for valid JSON output. Avoid `str(object)` for JSON.
97
+ - **Systems Primitive:** Forbid `const` (use `let`), `main()` wrappers, and `return` statements. Focus on side-effects and top-level execution.
98
+
99
+ ## 4. AI Behavioral Guidelines Working in this Repo
100
+
101
+ 1. **Never** "investigate" user testing directories (like `main/tests/`) as "deviations." They are active playgrounds.
102
+ 2. **Never** attempt to execute file modifications via shell/terminal text replacements. Use native file editing tools ONLY.
103
+ 3. **Always** check the `.md files` and `examples/` folder for the exact language specification before making assumptions about how Sesi works.
104
+ 4. If a file tree is mentioned in documentation, it represents an explicit layout constraint and must map 1:1 **UNLESS .gitignored FILES STATE OTHERWISE.**
105
+
106
+ ## 5. Development & TypeScript Standards (COMMANDS FOR AI AGENTS)
107
+
108
+ - **Type-Only Imports (MANDATORY):** Use `import { type ... }` for AST nodes. **DO NOT REMOVE** these. Removing them will break the build.
109
+ - **Interpreter Patterns (DO NOT "CLEAN UP"):** Dynamic casting and `any` are **EXPLICITLY PERMITTED** for tree-walking logic. They are a foundational part of the Sesi engine's design.
110
+ - **Ignore Linting Noise:** If you see warnings like "Unexpected any" or "Unsafe member access", **IGNORE THEM**.
111
+ - **Build Requirement:** You MUST run `npm run build` after every code change to the backend logic. Failure to build will result in testing stale code.
112
+
113
+ ## 6. Concurrency & Orchestration Patterns
114
+
115
+ - **Process Spawning:** Use `spawn(path)` or `exec(command)` to launch background Sesi processes.
116
+ - **Distributed Locking:** When agents share files, use the **Double-Check Write** pattern:
117
+ 1. Generate unique ID: `str(time()) + "_" + str(random())`
118
+ 2. Write ID to lock file if "unlocked".
119
+ 3. Wait micro-delay (empty `while` loop).
120
+ 4. Verify ID is still in lock file before entering critical section.
121
+ - **Resilience:** Always wrap file I/O in `try/catch` retry loops to handle filesystem contention.
122
+
123
+
124
+ ## 7. Neural Network & Machine Learning Standards in Sesi
125
+
126
+ When implementing offline deep learning, probabilistic dialogue routing, or native classification models in Sesi:
127
+
128
+ - **Symmetry Breaking:** Synapse weights MUST be initialized dynamically using wide, random float ranges (e.g. `(random() * 4.0) - 2.0` or `random() - 0.5`) to avoid zero-gradient stagnation and guarantee symmetry breaking.
129
+ - **The Self-Healing Watchdog Pattern:** In native Sesi training models, wrap backpropagation epochs inside a conditional watchdog loop. Monitor the final Mean Squared Error (MSE) loss, and automatically re-seed weights and relaunch training if the network gets stuck in linear minima traps (e.g. `if MSE >= 0.01`).
130
+ - **Unbreakable Markov Decoding Filters:** To eliminate infinite graph loops in Sesi probabilistic text walks, always apply:
131
+ 1. **Extended Sliding Lookbacks (Size 15):** Instantly penalize and discard candidates already generated in the last 15 words of the sentence history.
132
+ 2. **Strict Bigram Blocking:** Scan the history array and completely ban any candidate that repeats a previously executed state transition pair `(current_word -> candidate)` in the same sequence.
133
+ - **Model Ingestion & Persistence:** Synchronize Sesi weights using natively parsed JSON objects. Save calibrated neural states directly using `write_file(..., to_json(weights_map))` and read them into runtime memories using `from_json(read_file(...))` for high-speed offline forward passes.
@@ -65,6 +65,7 @@ Sesi is built on these core principles:
65
65
  - ✅ `import` / `export`
66
66
  - ✅ Namespace support
67
67
  - ✅ Built-in modules
68
+ - ✅ Multi-path module resolution (`SESI_PATH`, `~/.sesi/lib` global library)
68
69
 
69
70
  ## 4. Target Language (Syntax)
70
71
 
@@ -231,21 +232,22 @@ config_entry := (STRING | identifier) ':' expression
231
232
 
232
233
  **Config keys:**
233
234
 
234
- | Key | Applies to | Type | Description |
235
- |-----|-----------|------|-------------|
236
- | `temperature` | `model`, `image` | `number` | Sampling temperature (0.0–1.0) |
237
- | `max_tokens` | `model` | `number` | Max output token count |
238
- | `top_k` | `model` | `number` | Top-K diversity |
239
- | `top_p` | `model` | `number` | Nucleus sampling |
240
- | `ratio` | `image` | `string` | Aspect ratio e.g. `"16:9"` |
241
- | `size` | `image` | `string` | `"512"`, `"1K"`, `"2K"`, `"4K"` |
242
- | `images` | `model`, `image` | `string \| array<string>` | Local file path(s) passed as visual input |
235
+ | Key | Applies to | Type | Description |
236
+ | --------------- | ---------------- | ------------------------- | -------------------------------------------------------------------------- |
237
+ | `thinkingLevel` | `model` | `string \| object` | **Recommended**: Effort level (`"minimal"`, `"low"`, `"medium"`, `"high"`) |
238
+ | `temperature` | `model`, `image` | `number` | *Will be deprecated in Gemini 3.x+_ (Sampling temperature) |
239
+ | `max_tokens` | `model` | `number` | Max output token count |
240
+ | `top_k` | `model` | `number` | *Will be deprecated in Gemini 3.x+_ |
241
+ | `top_p` | `model` | `number` | *Will be deprecated in Gemini 3.x+_ |
242
+ | `ratio` | `image` | `string` | Aspect ratio e.g. `"16:9"` |
243
+ | `size` | `image` | `string` | `"512"`, `"1K"`, `"2K"`, `"4K"` |
244
+ | `images` | `model`, `image` | `string \| array<string>` | Local file path(s) passed as visual input |
243
245
 
244
246
  Example:
245
247
 
246
248
  ```sesi
247
- let result = model("gemini-3-flash-preview") {images: "scan.png", temperature: 0} {"Transcribe all visible text."}
248
- let output = model("gemini-3.1-flash-lite") {"temperature": 0.4, "max_tokens": 2000} {prompt}
249
+ let result = model("gemini-3.5-flash") {images: "scan.png", thinkingLevel: "low"} {"Transcribe all visible text."}
250
+ let output = model("gemini-3.5-flash") {thinkingLevel: "medium"} {prompt}
249
251
  ```
250
252
 
251
253
  #### Structured Output
@@ -357,7 +359,7 @@ random() -> number // Random float (0.0 to 1.0)
357
359
 
358
360
  ## 9. Module System
359
361
 
360
- Runtime module execution and standard namespace modules are fully implemented and natively supported in v1.1.2.
362
+ Runtime module execution and standard namespace modules are fully implemented and natively supported in v1.2+.
361
363
 
362
364
  ### Defining Modules
363
365
 
@@ -375,7 +377,7 @@ import {add, multiply, PI} from "math"
375
377
  let result = add(10, 20)
376
378
  ```
377
379
 
378
- ### Built-in Modules
380
+ ### Built-in Standard Library Modules
379
381
 
380
382
  ```sesi
381
383
  import time from "std/time" // Time/date functions
@@ -383,6 +385,59 @@ import math from "std/math" // Math operations
383
385
  import json from "std/json" // JSON parsing
384
386
  ```
385
387
 
388
+ ### Module Resolution Order (v1.2.2+)
389
+
390
+ When you write `import {x} from "mymodule"`, Sesi searches for `mymodule.sesi` in the following order, stopping at the first match:
391
+
392
+ | Priority | Location | Description |
393
+ | -------- | -------- | ----------- |
394
+ | 1 | **Script's own directory** | Same folder as the currently running `.sesi` file |
395
+ | 2 | **Current working directory** | The directory you ran `sesi` from |
396
+ | 3 | **`SESI_PATH`** | Semicolon-separated (Windows) or colon-separated (Unix) list of additional directories |
397
+ | 4 | **`~/.sesi/lib`** | Global shared library directory — available system-wide |
398
+
399
+ This means imports always resolve correctly regardless of where you run `sesi` from.
400
+
401
+ ### Global Library: `~/.sesi/lib`
402
+
403
+ The global library directory (`C:\Users\<you>\.sesi\lib` on Windows, `~/.sesi/lib` on Unix) lets you maintain shared modules that are importable from **any project on your system**.
404
+
405
+ To install a module globally, copy it to the lib directory:
406
+
407
+ ```powershell
408
+ # Windows
409
+ copy mymodule.sesi $env:USERPROFILE\.sesi\lib\
410
+
411
+ # Unix / macOS
412
+ cp mymodule.sesi ~/.sesi/lib/
413
+ ```
414
+
415
+ Then import it from any project without copying the file:
416
+
417
+ ```sesi
418
+ // Works from any folder anywhere on your system
419
+ import {callAPI, saveImage} from "retrorender"
420
+ import {GetProfile} from "profiles"
421
+ ```
422
+
423
+ ### Custom Library Paths: `SESI_PATH`
424
+
425
+ For team or monorepo setups, set the `SESI_PATH` environment variable to point to one or more shared library directories:
426
+
427
+ ```powershell
428
+ # Windows — add to your shell profile for persistence
429
+ $env:SESI_PATH = "C:\MyLibs\sesi-shared;C:\Projects\common"
430
+
431
+ # Unix / macOS
432
+ export SESI_PATH="/mylibs/sesi-shared:/projects/common"
433
+ ```
434
+
435
+ Multiple paths are separated by `;` on Windows and `:` on Unix.
436
+
437
+ ### Sub-module Resolution
438
+
439
+ When a module is loaded from any search path, its own imports are resolved **relative to that module's directory first**. This means modules can safely import their own siblings without any path configuration.
440
+
386
441
  ## 10. Reasoning Features Details
387
442
 
388
443
  ### Prompt Blocks
@@ -400,8 +455,8 @@ prompt combined {summarize " Now " translate}
400
455
  Model calls can take optional configuration parameters (written on a single line) followed by one or more prompts/strings.
401
456
 
402
457
  ```sesi
403
- // Model call with temperature and thinking scale configuration
404
- let response = model("gemini-3.1-pro-preview") {"thinkingLevel": {"thinking": "yes", "level": "low"}, "temperature": 0} {"Say hello"}
458
+ // Model call with native thinking effort level
459
+ let response = model("gemini-3.5-flash") {thinkingLevel: "low"} {"Say hello"}
405
460
  print response // Returns string
406
461
 
407
462
  let logo = image("gemini-3.1-flash-image-preview") {ratio: "1:1", size: "512"} {"A vector logo"}
@@ -410,12 +465,13 @@ print "Image written to logo.png"
410
465
  ```
411
466
 
412
467
  #### Config Block Options:
413
- - **`temperature`**: `number` (0.0 to 1.0)
468
+
469
+ - **`thinkingLevel`**: `string` (`"minimal"`, `"low"`, `"medium"`, `"high"`) or legacy `object` with keys `"thinking"` and `"level"`. Natively configures Gemini's reasoning budget.
414
470
  - **`max_tokens`**: `number` (maximum response tokens)
415
471
  - **`images`**: `string` or `array<string>` (paths to multimodal vision input files)
416
- - **`thinkingLevel`**: `object` with keys `"thinking"` (`"yes"` | `"no"`) and `"level"` (`"low"` | `"medium"` | `"high"`) - natively configures and scales Gemini's reasoning budget.
417
472
  - **`cache`**: `bool` (set to `false` to explicitly bypass Sesi Logic Caching)
418
-
473
+ - **`temperature`**: * Will be deprecated in Gemini 3.x+, use thinkingLevel instead.* — reasoning is pre-optimized for defaults.
474
+ - **`top_k` / `top_p`**: *Will be deprecated in Gemini 3.x+, use thinkingLevel instead.* — reasoning is pre-optimized for defaults.
419
475
 
420
476
  ### Structured Output
421
477
 
@@ -455,7 +511,7 @@ print x + y // Output: 30
455
511
  ### Example 2: Function with Reasoning
456
512
 
457
513
  ```sesi
458
- fn analyzeText(text: string) -> string {return model("gemini-3.1-pro-preview") {"temperature": 0} {"Analyze this text and return key insights:" text}}
514
+ fn analyzeText(text: string) -> string {return model("gemini-3.5-flash") {thinkingLevel: "low"} {"Analyze this text and return key insights:" text}}
459
515
  print analyzeText("Reasoning is transforming industries")
460
516
  ```
461
517