tycono 0.1.96-beta.4 → 0.1.96-beta.5

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.
Files changed (3) hide show
  1. package/README.md +5 -1
  2. package/bin/tycono.ts +10 -10
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <p align="center">
2
- <img src=".github/assets/hero-office.png" alt="Tycono — AI Office" width="720" />
2
+ <img src=".github/assets/wave-org-propagation.png" alt="Tycono — CEO dispatches through org hierarchy in real time" width="720" />
3
3
  </p>
4
4
 
5
5
  <h1 align="center">tycono</h1>
@@ -45,6 +45,10 @@ dispatch → watch → relay → quality gate → re-dispatch (if needed)
45
45
 
46
46
  CEO delegates to C-levels, C-levels dispatch to their teams. Authority is enforced — engineers can't make CEO decisions, PMs can't merge code. The org chart isn't decoration, it's the execution engine.
47
47
 
48
+ <p align="center">
49
+ <img src=".github/assets/wave-org-propagation.png" alt="Wave Center — org propagation with real-time status" width="640" />
50
+ </p>
51
+
48
52
  ### 2. Observability — See everything, intervene anytime
49
53
 
50
54
  Your AI team isn't a black box. Watch every agent work in real time, inject directives mid-execution, and drill down to any level.
package/bin/tycono.ts CHANGED
@@ -213,16 +213,7 @@ async function startServerForTui(): Promise<void> {
213
213
  const port = process.env.PORT ? Number(process.env.PORT) : await findFreePort();
214
214
  process.env.PORT = String(port);
215
215
 
216
- const { createHttpServer } = await import('../src/api/src/create-server.js');
217
- const server = createHttpServer();
218
-
219
- const host = process.env.HOST || '0.0.0.0';
220
-
221
- await new Promise<void>((resolve) => {
222
- server.listen(port, host, () => resolve());
223
- });
224
-
225
- // Suppress API server logs in TUI mode — redirect to file
216
+ // Suppress ALL server logs BEFORE creating server — redirect to file
226
217
  const logFile = path.resolve(process.env.COMPANY_ROOT || process.cwd(), '.tycono', 'server.log');
227
218
  try { fs.mkdirSync(path.dirname(logFile), { recursive: true }); } catch {}
228
219
  const logStream = fs.createWriteStream(logFile, { flags: 'a' });
@@ -233,6 +224,15 @@ async function startServerForTui(): Promise<void> {
233
224
  console.error = (...args: unknown[]) => logStream.write('[ERROR] ' + args.join(' ') + '\n');
234
225
  console.warn = (...args: unknown[]) => logStream.write('[WARN] ' + args.join(' ') + '\n');
235
226
 
227
+ const { createHttpServer } = await import('../src/api/src/create-server.js');
228
+ const server = createHttpServer();
229
+
230
+ const host = process.env.HOST || '0.0.0.0';
231
+
232
+ await new Promise<void>((resolve) => {
233
+ server.listen(port, host, () => resolve());
234
+ });
235
+
236
236
  origLog(` API server started on port ${port}`);
237
237
  origLog(` Logs: ${logFile}`);
238
238
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tycono",
3
- "version": "0.1.96-beta.4",
3
+ "version": "0.1.96-beta.5",
4
4
  "description": "Build an AI company. Watch them work.",
5
5
  "type": "module",
6
6
  "bin": {