Spaces:
Sleeping
Sleeping
agents: configured
Browse files- src/streamlit_app.py +71 -1
src/streamlit_app.py
CHANGED
|
@@ -284,4 +284,74 @@ def main() -> None:
|
|
| 284 |
Use these exact values with tool and wait for the analysis results.""",
|
| 285 |
recipient_agent = ceo
|
| 286 |
)
|
| 287 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 284 |
Use these exact values with tool and wait for the analysis results.""",
|
| 285 |
recipient_agent = ceo
|
| 286 |
)
|
| 287 |
+
|
| 288 |
+
cto_resp = agency.get_completion(
|
| 289 |
+
message = f"""Review the project analysis and create a technical specification suing the CreateTechnicalSpecification tool.
|
| 290 |
+
Choose the most appropriate:
|
| 291 |
+
- architecture_type (monolithic/microservices/serverless/hybrid)
|
| 292 |
+
- core_technologies (comma-seperated list)
|
| 293 |
+
- scalability_requirements(high/medium/low)
|
| 294 |
+
|
| 295 |
+
Base your choice on the project requirements and analysis.""",
|
| 296 |
+
recipient_agent = cto
|
| 297 |
+
)
|
| 298 |
+
|
| 299 |
+
|
| 300 |
+
pm_resp = agency.get_completion(
|
| 301 |
+
message = f"Analyze project management aspect: {str(project_info)}",
|
| 302 |
+
recipient_agent = product_manager,
|
| 303 |
+
additional_instruction = "Focus on product-market fit and roadmap development, and coordinate with technical and marketting team."
|
| 304 |
+
)
|
| 305 |
+
|
| 306 |
+
developer_resp = agency.get_completion(
|
| 307 |
+
message = f"Analyze technical implementation based on CTO's specification: {str(project_info)}",
|
| 308 |
+
recipient_agent = developer,
|
| 309 |
+
additional_information = "Provide technical implementation details, optimal tech stack you would be using including the cost of the cloud services (if any) and feasibility feedback, and coordinate with product manager and CTO to build the required product for the startup"
|
| 310 |
+
)
|
| 311 |
+
|
| 312 |
+
client_resp = agency.get_completion(
|
| 313 |
+
message = f"Analyse client success aspects: {str(project_info)}",
|
| 314 |
+
recipient_agent = client_manager,
|
| 315 |
+
additional_information = "Provide a detailed go-to-market strategy and customer acquistion role, and coordinate with project manager."
|
| 316 |
+
)
|
| 317 |
+
|
| 318 |
+
tabs = st.tabs([
|
| 319 |
+
"CEO's Project Analysis",
|
| 320 |
+
"CTO's Technical Specifications",
|
| 321 |
+
"Product Manager's Plan",
|
| 322 |
+
"Developer's Implementation",
|
| 323 |
+
"Client Success Strategy"
|
| 324 |
+
])
|
| 325 |
+
|
| 326 |
+
|
| 327 |
+
with tabs[0]:
|
| 328 |
+
st.markdown("## CEO's Strategic Analysis")
|
| 329 |
+
st.markdown(ceo_resp)
|
| 330 |
+
st.session_state.messages.append({"role": "assistant", "content":ceo_resp})
|
| 331 |
+
|
| 332 |
+
with tabs[1]:
|
| 333 |
+
st.markdown("## CTO's Technical Specification")
|
| 334 |
+
st.markdown(cto_resp)
|
| 335 |
+
st.session_state.messages.append({"role": "assistant", "content":cto_resp})
|
| 336 |
+
|
| 337 |
+
with tabs[2]:
|
| 338 |
+
st.markdown("## Product Manager's Plan")
|
| 339 |
+
st.markdown(pm_resp)
|
| 340 |
+
st.session_state.messages.append({"role": "assistant", "content":pm_resp})
|
| 341 |
+
|
| 342 |
+
with tabs[3]:
|
| 343 |
+
st.markdown("## Developer's Development Plan")
|
| 344 |
+
st.markdown(developer_resp)
|
| 345 |
+
st.session_state.messages.append({"role": "assistant", "content":developer_resp})
|
| 346 |
+
|
| 347 |
+
with tabs[4]:
|
| 348 |
+
st.markdown("## Client Success Strategy")
|
| 349 |
+
st.markdown(client_resp)
|
| 350 |
+
st.session_state.messages.append({"role": "assistant", "content":client_resp})
|
| 351 |
+
|
| 352 |
+
except Exception as e:
|
| 353 |
+
st.error(f"Error during analysis: {str(e)}")
|
| 354 |
+
st.error("Please check your inputs and API Key and try again")
|
| 355 |
+
except Exception as e:
|
| 356 |
+
st.error(f"Error during analysis: {str(e)}")
|
| 357 |
+
st.error("Please check your inputs and API Key and try again")
|