Forked clean from public hackathon repo (Starfire-AgentTeam, BSL 1.1) with full rebrand to Molecule AI under github.com/Molecule-AI/molecule-monorepo. Brand: Starfire → Molecule AI. Slug: starfire / agent-molecule → molecule. Env vars: STARFIRE_* → MOLECULE_*. Go module: github.com/agent-molecule/platform → github.com/Molecule-AI/molecule-monorepo/platform. Python packages: starfire_plugin → molecule_plugin, starfire_agent → molecule_agent. DB: agentmolecule → molecule. History truncated; see public repo for prior commits and contributor attribution. Verified green: go test -race ./... (platform), pytest (workspace-template 1129 + sdk 132), vitest (canvas 352), build (mcp). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
38 lines
713 B
Go
38 lines
713 B
Go
package main
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
"log"
|
|
"os"
|
|
)
|
|
|
|
func main() {
|
|
// Redirect log output to a file so it doesn't corrupt the TUI.
|
|
if logFile, err := os.OpenFile("molecli.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0600); err == nil {
|
|
log.SetOutput(logFile)
|
|
defer logFile.Close()
|
|
} else {
|
|
log.SetOutput(os.Stderr)
|
|
}
|
|
|
|
if err := buildRootCmd().Execute(); err != nil {
|
|
var exitErr exitCoder
|
|
if errors.As(err, &exitErr) {
|
|
if msg := err.Error(); msg != "" {
|
|
fmt.Fprintln(os.Stderr, msg)
|
|
}
|
|
os.Exit(exitErr.ExitCode())
|
|
}
|
|
fmt.Fprintln(os.Stderr, err)
|
|
os.Exit(1)
|
|
}
|
|
}
|
|
|
|
func baseURL() string {
|
|
if u := os.Getenv("MOLECLI_URL"); u != "" {
|
|
return u
|
|
}
|
|
return "http://localhost:8080"
|
|
}
|