File size: 1,655 Bytes
432377b
65638b6
6853edd
4e571d8
61093a1
 
4e571d8
61093a1
6853edd
61093a1
 
4e571d8
6853edd
 
 
 
 
f26b207
432377b
 
8ef892f
 
 
0d47883
432377b
4e2c02b
 
3127699
6853edd
65638b6
 
 
6853edd
65638b6
 
 
 
 
432377b
65638b6
 
6853edd
65638b6
 
 
 
6853edd
 
 
 
 
 
 
 
 
 
8ef892f
 
6853edd
8ef892f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import os
import shutil
# Force HOME to /tmp so CrewAI doesn't try writing to /.local
os.environ["HOME"] = "/tmp"
os.environ["XDG_DATA_HOME"] = "/tmp/.local/share"
os.environ["CREWAI_STORAGE_PATH"] = "/tmp/crewai_data"
os.environ["CREWAI_HOME"] = "/tmp/crewai_home"

# Create safe directories
os.makedirs("/tmp/.local/share", exist_ok=True)
os.makedirs("/tmp/crewai_data", exist_ok=True)
os.makedirs("/tmp/crewai_home", exist_ok=True)
from crewai import Crew, Process
import json
from fastapi import FastAPI
from routers import objective_route, outliner_route, outcome_route,introduction_route


app = FastAPI(title="AI Agent Project", version="1.0.0")

app.include_router(outliner_route.router)
app.include_router(objective_route.router)
app.include_router(outcome_route.router)
app.include_router(introduction_route.router)

# Clear Cashe
@app.get("/reset-cache")
def reset_cache():

    paths = [
        "/tmp/crewai_data",
        "/tmp/crewai_home",
        "/tmp/.local/share",
    ]

    for path in paths:
        if os.path.exists(path):
            shutil.rmtree(path, ignore_errors=True)

    os.makedirs("/tmp/crewai_data", exist_ok=True)
    os.makedirs("/tmp/crewai_home", exist_ok=True)
    os.makedirs("/tmp/.local/share", exist_ok=True)

    return {"message": "✅ Cache cleared successfully."}


# Example root endpoint
@app.get("/")
def read_root():
    return {"message": "Welcome to AI Agent Project API 🚀"}


# ------------------------
# ✅ نقطة تشغيل السيرفر
# ------------------------

# if __name__ == "__main__":
#     import uvicorn

#     uvicorn.run("main:app", host="127.0.0.1", port=8000, reload=True)