MCPcopy
hub / github.com/AstrBotDevs/AstrBot / insert_persona

Method insert_persona

astrbot/core/db/sqlite.py:921–949  ·  view source on GitHub ↗

Insert a new persona record.

(
        self,
        persona_id,
        system_prompt,
        begin_dialogs=None,
        tools=None,
        skills=None,
        custom_error_message=None,
        folder_id=None,
        sort_order=0,
    )

Source from the content-addressed store, hash-verified

919 return result.rowcount > 0
920
921 async def insert_persona(
922 self,
923 persona_id,
924 system_prompt,
925 begin_dialogs=None,
926 tools=None,
927 skills=None,
928 custom_error_message=None,
929 folder_id=None,
930 sort_order=0,
931 ):
932 """Insert a new persona record."""
933 async with self.get_db() as session:
934 session: AsyncSession
935 async with session.begin():
936 new_persona = Persona(
937 persona_id=persona_id,
938 system_prompt=system_prompt,
939 begin_dialogs=begin_dialogs or [],
940 tools=tools,
941 skills=skills,
942 custom_error_message=custom_error_message,
943 folder_id=folder_id,
944 sort_order=sort_order,
945 )
946 session.add(new_persona)
947 await session.flush()
948 await session.refresh(new_persona)
949 return new_persona
950
951 async def get_persona_by_id(self, persona_id):
952 """Get a persona by its ID."""

Callers

nothing calls this directly

Calls 4

PersonaClass · 0.90
addMethod · 0.80
get_dbMethod · 0.45
flushMethod · 0.45

Tested by

no test coverage detected