λΉμ¦λμ€ λͺ©νλ₯Ό μ λ ₯νλ©΄, AI μμ΄μ νΈ νμ΄ μ λ΅ μ립λΆν° μ€νΒ·κ²ν κΉμ§ μλμΌλ‘ μ²λ¦¬ν©λλ€.
Agentic Companyλ AI μμ΄μ νΈλ₯Ό μ§μμ²λΌ μ±μ©νκ³ , λΉμ¦λμ€ λͺ©νλ₯Ό μλμΌλ‘ μ€ννλ νλ«νΌμ λλ€.
κΈ°μ‘΄ AI λꡬλ€μ΄ λ¨μ μ§μμλ΅μ 머무λ κ²κ³Ό λ¬λ¦¬, Agentic Companyλ μ λ΅ β μ€ν β κ²ν 3λ¨κ³ μν λΆλ¦¬ κ΅¬μ‘°λ‘ μ€μ μ 무 μν¬νλ‘μ°λ₯Ό μλνν©λλ€.
νμ¬ λ±λ‘ β μμ΄μ νΈ μ±μ© β λͺ©ν μ
λ ₯ β AI μλ μ€ν β μ°μΆλ¬Ό μμ±
| κΈ°λ₯ | μ€λͺ |
|---|---|
| π’ νμ¬ κ΄λ¦¬ | νμ¬λ₯Ό λ±λ‘νκ³ AI μμ΄μ νΈ νμ κ΅¬μ± |
| π€ μμ΄μ νΈ μ±μ© | 24μ’ μ λ¬Έ μμ΄μ νΈλ₯Ό μν λ³λ‘ μ±μ© (μ λ΅Β·μ€νΒ·κ²ν ) |
| π― λͺ©ν μ€μ | λΉμ¦λμ€ λͺ©νλ₯Ό λ±λ‘νλ©΄ AIκ° μ€ν κ³ν μ립 |
| β‘ μν¬νλ‘μ° μλ μ€ν | μμ΄μ νΈκ° 31κ° μ€ν¬λ‘ μ 무λ₯Ό μλ μ²λ¦¬ |
| π μ°μΆλ¬Ό μλ μμ± | PPTXΒ·MarkdownΒ·XLSXΒ·PDF νμμΌλ‘ κ²°κ³Όλ¬Ό μ μ₯ |
| π λμ보λ | KPI λ©νΈλ¦, μ€ν μ΄λ ₯, μμ΄μ νΈ μ±κ³Ό νλμ νμΈ |
| π³ ꡬλ κ³ΌκΈ | Starter Β· Growth Β· Enterprise νλ (TossPayments μ°λ) |
3κ°μ§ μν μ 24μ’ AI μμ΄μ νΈμ 31κ° μ λ¬Έ μ€ν¬λ‘ ꡬμ±λ©λλ€.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AI μμ΄μ νΈ ν β
βββββββββββββββ¬ββββββββββββββββββββ¬βββββββββββββββββββββ€
β π§ μ λ΅κ° β β‘ μ€νκ° β π κ²ν μ β
β STRATEGIST β OPERATOR β REVIEWER β
βββββββββββββββΌββββββββββββββββββββΌβββββββββββββββββββββ€
β μμ₯ λΆμ β μΊ νμΈ λΈλ¦¬ν μμ± β λ²λ¬΄ 리μ€ν¬ μ²΄ν¬ β
β λΈλλ μ λ΅ β μ½ν
μΈ μΊλ¦°λ κ΄λ¦¬ β μ»΄νλΌμ΄μΈμ€ κ°μ¬ β
β κ³ κ° λ¦¬μμΉ β μ±μ₯ μ€ν μ€κ³ β μ¬λ¬΄ νλΉμ± κ²ν β
β IR νΌμΉ μ€κ³ β μμ
μνμ€ μλν β KPI λμ보λ λΆμ β
β ...8μ’
β ...8μ’
β ...8μ’
β
βββββββββββββββ΄ββββββββββββββββββββ΄βββββββββββββββββββββ
| λ μ΄μ΄ | κΈ°μ |
|---|---|
| Framework | Next.js 15 (App Router, Server Components) |
| Language | TypeScript 5 (strict mode) |
| Styling | Tailwind CSS v4 + shadcn/ui |
| Database | PostgreSQL (Supabase νΈμ€ν ) |
| ORM | Prisma 6 |
| Auth | NextAuth.js v4 (Google OAuth) |
| Storage | Supabase Storage (μ°μΆλ¬Ό νμΌ μ μ₯) |
| AI | Azure OpenAI GPT-4o / Claude API |
| Search | Tavily API / Serper.dev |
| Payment | TossPayments |
| Deploy | Vercel |
agentic-company/
βββ app/ # Next.js App Router νμ΄μ§
β βββ api/ # API Routes (λ°±μλ μλν¬μΈνΈ)
β β βββ companies/ # νμ¬ CRUD
β β βββ agents/ # μμ΄μ νΈ μ±μ©/ν΄κ³
β β βββ goals/ # λͺ©ν κ΄λ¦¬
β β βββ workflows/ # μν¬νλ‘μ° μ€ν
β β βββ payments/ # κ²°μ μ²λ¦¬
β βββ companies/ # νμ¬ λͺ©λ‘Β·μμΈ νμ΄μ§
β βββ agents/ # μμ΄μ νΈ μΉ΄νλ‘κ·Έ
β βββ goals/ # λͺ©ν κ΄λ¦¬ νμ΄μ§
β βββ workflows/ # μν¬νλ‘μ° μ€ν μ΄λ ₯
β βββ dashboard/ # λ©μΈ λμ보λ
β
βββ src/
β βββ components/ # μ¬μ¬μ© UI μ»΄ν¬λνΈ
β β βββ ui/ # shadcn/ui κΈ°λ° κΈ°λ³Έ μ»΄ν¬λνΈ
β βββ lib/
β βββ agents/ # μμ΄μ νΈ λ‘μ§ (μ λ΅/μ€ν/κ²ν )
β βββ mock/ # μμ΄μ νΈΒ·μ€ν¬ μΉ΄νλ‘κ·Έ (24μ’
/ 31κ°)
β βββ repositories/ # DB μ κ·Ό λ μ΄μ΄ (Prisma)
β βββ workflows/ # μν¬νλ‘μ° μ€ν μμ§
β βββ storage/ # Supabase Storage μ°λ
β βββ auth/ # NextAuth μ€μ
β
βββ prisma/
β βββ schema.prisma # DB μ€ν€λ§ (11κ° λͺ¨λΈ)
β
βββ CONTRIBUTING.md # κ°λ° μμ
μ§μΉ¨ (νλ
)
- Node.js 18.17 μ΄μ
- PostgreSQL DB (Supabase νλ‘μ νΈ κΆμ₯)
- Google OAuth μ± (Google Cloud Console)
git clone https://github.com/ramido99/agentic-company.git
cd agentic-companynpm installcp .env.example .env.env νμΌμ μ΄κ³ μλ νλͺ©μ μ±μμ£ΌμΈμ:
# νμ
DATABASE_URL="postgresql://..." # Supabase DB μ°κ²° λ¬Έμμ΄
NEXTAUTH_SECRET="..." # openssl rand -base64 32 μΌλ‘ μμ±
AUTH_GOOGLE_ID="..." # Google OAuth ν΄λΌμ΄μΈνΈ ID
AUTH_GOOGLE_SECRET="..." # Google OAuth ν΄λΌμ΄μΈνΈ μν¬λ¦Ώ
SUPABASE_URL="https://..." # Supabase νλ‘μ νΈ URL
SUPABASE_SERVICE_ROLE_KEY="..." # Supabase Service Role ν€
# AI (νλ μ΄μ νμ)
AZURE_OPENAI_API_KEY="..."
AZURE_OPENAI_ENDPOINT="..."
AZURE_OPENAI_DEPLOYMENT="..."κ° νλͺ© λ°κΈ λ°©λ²μ
.env.exampleμ£Όμμ μ°Έκ³ νμΈμ.
# Prisma ν΄λΌμ΄μΈνΈ μμ±
npx prisma generate
# DB μ€ν€λ§ μ μ©
npx prisma db pushnpm run devλΈλΌμ°μ μμ http://localhost:3000 μ μ
Supabase λμ보λ β Storage β New Bucket μμ±:
| νλͺ© | κ° |
|---|---|
| Bucket name | workflow-artifacts |
| Public bucket | OFF (λΉκ³΅κ°) |
sqlinit/ ν΄λμ SQL νμΌμ Supabase SQL Editorμμ μμλλ‘ μ€ννμΈμ.
sqlinit/
βββ 01_schema.sql # μ 체 ν
μ΄λΈ μμ±
βββ 02_indexes.sql # μ±λ₯ μΈλ±μ€
βββ 03_storage.sql # Storage λ²ν· + μ μ±
βββ 04_agent_skill_assignment.sql # μμ΄μ νΈ μ€ν¬ λ°°μ ν
μ΄λΈ
βββ 05_rls_policies.sql # Row Level Security μ€μ
μΌλ°μ μΌλ‘λ
npx prisma db pushλ‘ μ€ν€λ§ μ μ©μ΄ λ κ°νΈν©λλ€. SQL νμΌμ Prisma μμ΄ μ§μ DBλ₯Ό μ΄κΈ°ννκ±°λ λ°±μ 볡μ μ μ¬μ©ν©λλ€.
npm run dev # κ°λ° μλ² μ€ν (Turbopack)
npm run build # νλ‘λμ
λΉλ
npm run lint # ESLint κ²μ¬
npx tsc --noEmit # TypeScript νμ
체ν¬
npx prisma studio # DB GUI λΈλΌμ°μ μ΄κΈ°
npx prisma db push # μ€ν€λ§ λ³κ²½μ¬ν DB λ°μUser ββββ Membership ββββ Workspace
β
ββββββ΄βββββββββββ
β β
Company Goal
β β
βββββ WorkflowRun ββββββ Artifact
β
UsageRecord
μ£Όμ λͺ¨λΈ: User Β· Workspace Β· Company Β· Goal Β· WorkflowRun Β· Artifact
- Vercel β Add New Project β GitHub
agentic-companyimport - Environment Variables νμμ
.envκ° μ 체 λ±λ‘ - Deploy ν΄λ¦ β
mainλΈλμΉ push μ μλ λ°°ν¬
Google OAuth μ½μμμ μΉμΈλ 리λλ μ URIμ λ°°ν¬ URL μΆκ° νμ:
https://your-domain.vercel.app/api/auth/callback/google
μ½λ κΈ°μ¬ μ CONTRIBUTING.md λ₯Ό λ¨Όμ μ½μ΄μ£ΌμΈμ.
λͺ¨λ μμ
μ GitHub Issue β Branch β Commit β PR μμλ‘ μ§νν©λλ€.
Built with β€οΈ using Next.js 15 + AI