\documentclass{article}
\usepackage{keyval,color}
\usepackage{xepersian}
\makeatletter
\define@key{mydefinitionbox}{width}{\def\@mydefinitionboxwidth{#1}}
\define@key{mydefinitionbox}{theorem name}{\def\@mytheoremname{#1}}
\define@key{mydefinitionbox}{background color}{\def\@mybackgroundcolor{#1}}
\define@key{mydefinitionbox}{rule color}{\def\@myrulecolor{#1}}
\define@key{mydefinitionbox}{rule width}{\def\@myfboxrulewidth{#1}}
\define@key{mydefinitionbox}{paragraph indentation}{\def\@myparagraphindentation{#1}}
\newsavebox\mydefinitionbox
\@definecounter{mydefinition}
\newenvironment{definition}[1][]{%
\setkeys{mydefinitionbox}{width=\textwidth,theorem name={تعریف},background color=white,rule color=black,rule width=0.4pt,paragraph indentation=0.5cm,
#1}
\setlength{\fboxrule}{\@myfboxrulewidth}%
\begin{lrbox}{\mydefinitionbox}%
\begin{minipage}{\dimexpr(\@mydefinitionboxwidth-2\fboxsep-2\fboxrule)}%
\setlength{\parindent}{\@myparagraphindentation}
\refstepcounter{mydefinition}%
\setlength{\fboxrule}{0.4pt}%
\fbox{\themydefinition}
\textbf{\@mytheoremname}
}{%
\end{minipage}%
\end{lrbox}%
\vskip5pt
\noindent\fcolorbox{\@myrulecolor}{\@mybackgroundcolor}{\usebox\mydefinitionbox}%
\vskip5pt}
\makeatother
\begin{document}
این یک متن آزمایشی است که در حال نوشتنش هستیم این یک متن آزمایشی است که در حال نوشتنش هستیم این یک متن آزمایشی است که در حال نوشتنش هستیم
\begin{definition}[theorem name={قضیه},background color=yellow,rule width=4pt,rule color=yellow]
می‌گوئیم حد دنباله
\[\lim_{n\to\infty}a_n=L\]
مابقی چرندیات ...
\end{definition}
\begin{definition}[width=8cm,rule color=red, rule width=4pt,paragraph indentation=0pt]
می‌گوئیم حد دنباله
\[\lim_{n\to\infty}a_n=L\]
مابقی چرندیات ...
\end{definition}
\begin{definition}[width=0.9\textwidth, theorem name={نکته},background color=yellow, rule color=red,rule width=5pt,paragraph indentation=1cm]
می‌گوئیم حد دنباله
\[\lim_{n\to\infty}a_n=L\]
مابقی چرندیات ...
\end{definition}
\end{document}
